若MSC-51单片机的晶振频率为6MHz,利用定时器0定时中断的方法

求大神解答
若MSC-51单片机的晶振频率为6MHz,利用定时器0定时中断的方法,使P1.0输出占空比为1:3的矩形脉冲(周期为1ms)编程题
求助 感谢

占空比1:3一般指的是周期是3个单位,高电平是1个单位
所以定时器定时333us ,每个脉冲2us
脉冲个数166个,最终周期996us,不太准确
用中断吧,主程序中:
TMOD=0X02;//定时器0工作方式2
TL0=(256-166);TH0=(256-166);
ET0=1;EA=1;
a=0;TR0=1;
中断程序中:

a++;if(a==1)PWM=0;
if(a==3){a=0;PWM=1;}追问

可以编个程序嘛?

追答

程序几乎已经写完了呀
#include
sbit PWM=某管脚
unsigned char a=0;
//主程序
void main()
{上面第一段
while(1);}
//中断程序
void timer0()interrupt 1
{
上面第二段
}

追问

真的太谢谢啦

温馨提示:答案为网友推荐,仅供参考