芯片是stc15w408as
目标:产生一个占空比为90%的方波。振幅5-0v,占空比可调,比如周期20ms,高电平2ms。
#include
unsigned char a,b;//定义全局变量
sbit OUT = P0^0;//定义引脚
// 定时器中断初始化
void timer0_init()
{
EA = 0;
TMOD = 0X01;
ET0 = 1;
TR0 =1;
TH0 = (65535-10000)/256;
TL0 = (65535-10000)%256;
EA = 1;
}
// 定时器中断
void timer0() interrupt 1
{
TH0 = (65535-10000)%256;
TL0 = (65535-10000)%256;
a++;
}
void main()
{
void timer0_init();
while(1)
{
if(a==4)
{
OUT = 0;
}
else
{
OUT = 1;
}
if(a==5)
{
a = 0;
}
}
}
转自:51单片机 方波_weixin_30716141的博客-CSDN博客
或者下面这个:
