×
单片机 > 单片机程序设计 > 详情

8051系统用定时/计数器T0产生周期为2ms的方波

发布时间:2024-06-17 发布时间:
|

8051系统中,已知振荡频率为12MHz,用定时/计数器T0,实现从P1.0产生周期为2ms的方波。C语言进行编程。


从P1.0输出周期为2ms的方波,只须P1.0每1ms取反一次则可。当系统时钟为12MHZ,定时/计数器T0工作于方式1时,最大的定时时间为65.536ms,满足1ms的定时要求,方式控制字应设定为00000001B(01H)。定时1ms,计数值N为1000,初值X=65536-1000=64536,则TH0=FCH,TL0=18H。

#include //包含特殊功能寄存器库


sbit P1_0=P1^0;


void main()


{


TMOD=0x01; //定时器0,方式1


TH0=0xFC;


TL0=0x18; //定时1ms,0xfc18 == 64536


EA=1; //开总中断


ET0=1; //开定时器0中断


TR0=1; //开定时器0


while(1);


}


void time0_int(void) interrupt 1 //中断服务程序


{


TH0=0xFC;


TL0=0x18;


P1_0=!P1_0;


}


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR M16实验之六 DS18B20测温