利用定时/计数器,产生使P1.0引脚上输出周期为20ms的方波,占空比为50%,采用中断方式,设系统时钟频率为12 MHz。要用C语言编写程序……
我是新手 希望程序里带着注释 越详细越好 分值可以追加
如果占空比是20%,怎么改程序
如果占空比是20%,怎么改程序
追答#include"reg52.h"
sbit PWM=P1^0;//定义输出脚
unsigned char i=0;
void main()
{
TMOD=0x01; //定时器0工作方式1
TH0=(65536-4000)/256; //12M晶振4MS计时常数
TL0=(65536-4000)%256;
EA=1; //开总中断
ET0=1; //开定时器0中断
TR0=1; //启动定时器0
PWM=0;
while(1);
}
//中断函数,启动后每10MS进入一次中断
void T0_time(void) interrupt 1
{
TH0=(65536-4000)/256; //12M晶振4MS计时常数
TL0=(65536-4000)%256;
if(i==0)PWM=1;
if(i==4){PWM=0;i=0;}
else i++;
}
非常感谢 能加你为QQ好友吗 我的Q号619145498
追答+了我叫守着窗儿
你写的程序呢