从某一IO口输出2ms的方波,占空比是50%,如果我采用定时器触发,我写的下面的程序,错误在哪里呢? /*电路加电后,输出输出占空比为50%的方波*/ /* coder:louis */ /* date:le 23 avril 2008 */ /* Version:0.0 */ #include<reg52.h> sbit LED=P0^0;
void outputpuls() interrupt 1 { LED=!LED; TH0 = (65536-2000)/256; TL0 = (65536-2000)%256; }
void main() { /*中断设置*/ EA = 0X0; //关闭所有中断 ET0 = 0X1; //允许T0中断 EA = 1; //开中断
/*定时器的设置*/ TMOD = 0X00000001; //TO,模式1,计时不受外部硬件信号控制 TCON = 0X00010000; //TO开始工作 TH0 = (65536-2000)/256; TL0 = (65536-2000)%256;
while(1); } |