/*用keil3与proteus7.4联调,自己下载后开启联调设置,在proteus中画个最小
单片机系统,再用单片机连接keil的编译文件.HEX即可。假设
时钟频率12MHz,执行一条语句所用时间1us,2kHz为500us,即定时器频率定时500us,如果用T0,则初值为TH0=0x1f,TL0=0x40;
占空比7:10,
脉冲宽度350us,用T1,初值TH1=0x15,TL1=0xe0。*/
#include<reg51.h>
sbit OUTW=P1^0;
void init()
{
EA=1;
TMOD=0x11;
ET0=1;
ET1=1;
TR0=1;
TR1=0;
OUTFW=0;
}
void main()
{
init();
while(1);
}
void timer0 interrupt 1
{
TH0=0x1f;
TL0=0x40;
TH1=0x15;
TL1=0xe0;
OUTW=1;
TR1=1;
}
void timer1 interrupt 3
{
OUTW=0;
TR1=0;
}
//注意:调频就是在IO变量在不同的时间置1,调宽就是在不同的时间置0