新闻中心

EEPW首页>嵌入式系统>设计应用> 51单片机定时器的应用以及计数初值的计算

51单片机定时器的应用以及计数初值的计算

作者: 时间:2016-11-11 来源:网络 收藏
#include
#define uchar unsigned char
#define uint unsigned int
sbit LED=P0^0;
uchar t_count=0;
int main(void)
{
TMOD=0x00;
TH0=(8192-5000)/32;
TL0=(8192-5000)%32;
IE=0x82;
TR0=1;
while(1);
}
void LED_FLASH() interrupt1
{
TH0=(8192-5000)/32;
TL0=(8192-5000)%32;
if(++t_count==100)
{
LED=~LED; //0.5s开关一次LED
t_count=0;
}
}
------------------------------------------------------------------------------------------------------------------------------
现假设 单片机晶振为12MHz,在P1.0端输出1ms的方波
采用方式0计数
方式0由低五位和高八位计数器组成 2^5=32 所以文中采用取余和取商的操作方法
(2^13-x)*1us=500us
x=8192-500=7692=1111000001100;
即TH0=78H;TL0=0CH;


评论


技术专区

关闭