编写程序要求使用t1,采用和工作方式1定时,在p1.0输出周期为500us,占空比为9:1的矩形脉冲

急求,谢谢啦
2025-03-01 11:03:22
推荐回答(1个)
回答1:

要求什么语言?晶振频率多少?
uchar aa;
void init()//初始化设置
{
TMOD=0x10;//定时器1工作方式1
EA=1;//开总中断
ET1=1;//允许定时器1中断
TH1=0xff;
TL1=0xce;
TR1=1;//启动定时器
aa=0;
}
void timer1()interrupt 3//注意:定时器1的中断序号为3
{
aa++;
TH1=0xff;//12Mhz时定时50US
TL1=0xce;
if(aa==9)//9*50=450US
{
P1^0=0;
}
if(aa==10))//10*50=5000US
{
P1^0=1;
aa=0;
}
}
void main( )
{
init();
P1^0=1;
while(1);
}