/*6mhz,机器周期为2us
周期为500us 那么高电平持续时间为250us
250/2=125*/
#include<reg51.h>
sbit mc=P1^0;//脉冲产生用P1.0口
void main()
{
TMOD=0x10;
TH1=(65536-125)/256;
TL1=(65536-125)/256;//给初值
EA=1;
ET1=1;
TR1=1; //开中断
while(1);//等待中断
}
/********************************中断服务子程序****************/
void zd() interrupt 3
{
TH0=(65536-125)/256;
TL0=(65536-125)/256; //重载初值
mc=~mc; //脉冲取反
}
汇编自己想,都是一样的
参考资料:自己编的