|
用Protues軟件仿真51單片機(jī)時(shí),定時(shí)器的時(shí)間和用板子測試時(shí)不一樣,怎么辦?
平時(shí)用板子的時(shí)候,時(shí)間設(shè)置為2ms中斷一次,中斷里面+500次就得到一秒鐘,但是在用Protues軟件仿真的時(shí)候,要10秒才加一次,這是什么問題呢?
時(shí)鐘我設(shè)置的初始時(shí)間是12:30:00,本應(yīng)該數(shù)碼管顯示的變量會(huì)和時(shí)鐘秒鐘一樣快才對,可是當(dāng)時(shí)鐘跑到12:30:10的時(shí)候,定時(shí)器里面那個(gè)變量才加一顯示在數(shù)碼管上。
有大佬幫忙解答一下嗎, 非常感謝了!
2.png (24.06 KB, 下載次數(shù): 67)
下載附件
2021-3-23 16:14 上傳
void Timer0_Init(void)
{
TMOD |= 0x01;//設(shè)置為16位計(jì)數(shù)器
TH0 = (65535-2000)/256;//時(shí)間定為2ms
TL0 = (65535-2000)%256;
EA = 1;
ET0 = 1;
TR0 = 1;
}
void Interrupt0(void)interrupt 1
{
static uint tim = 0,time = 0;
TH0 = (65535-2000)/256;
TL0 = (65535-2000)%256;
tim++;
if(tim >= 500)
{
tim = 0;
time++;
}
Dis[0] = Tab[time/1000%10];
Dis[1] = Tab[time/100%10];
Dis[2] = Tab[time/10%10];
Dis[3] = Tab[time%10];
key2();
Display();
}
|
|