📄 dingshiqi.c
字号:
/***********************************************************************
“天祥电子” 倾情奉献
www.txmcu.cn
www.txmcu.com
***********************************************************************
程序功能: 本程序演示用定时器的方法产生一PWM方波,其周期为1ms(0.001s,1KHz);
占空比为1/5(高电平持续200us)。若产生其他参数的PWM波,只需更改
程序中的相关参数即可。(同学们也可试着设计可调的PWM输出)
pwm波由P1^0口输出。可观察到其对应发光二极管在闪烁
(熄灭持续时间为200us,点亮持续时间为800us,闪烁周期为1ms)。
**************************************************************************/
#include<reg52.h>
#define uint unsigned int
uint pp;
sbit pwm=P1^0;
void main()
{
TMOD=0x01; //模式设置,00000001,可见采用的是定时器0,工作与模式1(M1=0,M0=1)。
TR0=1; //打开定时器
TH0=0Xff; //定时器设置,每隔100微秒发起一次中断。
TL0=0Xa4;
ET0=1; //开定时器0中断
EA=1; //开总中断
while(1)
{
if(pp<=2)
pwm=1;
else
pwm=0;
if(pp==10)
pp=0;
}
}
void time0() interrupt 1
{ TH0=0Xff;
TL0=0Xa4;
pp++;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -