微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 求助定时器的问题

求助定时器的问题

时间:10-02 整理:3721RD 点击:
请前辈帮忙看看这一段。就是最简单的一个秒表。
我是STC12C5A60S2,晶振22.1184MHz,但是我算下来感觉依然是12T一个周期啊,是不是我对这个1T和12T的理解有误?另外。我按12T算出来的10ms初值B800,但是运行起来还是比1秒要慢10%左右。请问是什么原因。
void main()
{
TMOD=0x01; //TO为16位定时器模式
TH0=0XB8;
TL0=0X00;
EA=1;
ET0=1; //开TO中断
TR0=1;
while(1)
{
if(n==100)
{
EA=0;
n=0;
m++;
tmp[3] = m%10 + 0x30;
tmp[2] = m%100/10 + 0x30;
tmp[1] = m%1000/100 + 0x30;
tmp[0] = m/1000 + 0x30;
Display_ASCII8X16_Color(88,92,tmp,YELLOW,BLACK);
EA=1;
}
}
}

void InterruptTimer0() interrupt 1
{
TH0 = 0XB8;
TL0 = 0X00;
n++;
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top