找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2491|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

STC89單片機(jī)定時(shí)器比預(yù)定值快3倍,不知道程序那里出問(wèn)題了?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:451718 發(fā)表于 2019-5-13 22:20 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
50黑幣
晶振12M沒(méi)有問(wèn)題, 硬件電路一切正常。  val就是自加變量,用來(lái)在LED上顯示讀秒的。   主要是為了調(diào)定時(shí)器,結(jié)果就是調(diào)不準(zhǔn)。時(shí)間讀數(shù)快出將近3倍。 不知道哪里出問(wèn)題了。  請(qǐng)職業(yè)高手賜教。

void ConfigTimer1(void)  //5ms定時(shí)
{
        AUXR &= 0xBF;                //定時(shí)器時(shí)鐘12T模式
        TMOD &= 0x0F;                //設(shè)置定時(shí)器模式
        TMOD |= 0x10;                //設(shè)置定時(shí)器模式
        TL1 = 0xB0;                //設(shè)置定時(shí)初值
        TH1 = 0x3c;                //設(shè)置定時(shí)初值
        TF1 = 0;                //清除TF1標(biāo)志
        TR1 = 1;                //定時(shí)器1開始計(jì)時(shí)
}

void main()
{
   EA=1;
        // ET0=1;
         ET1=1;
         k1=1;
         k2=0;
  // ConfigTimer0();           //10ms
         ConfigTimer1();           //50ms
         while(1)
         {
                 LedRefresh();                 
                 LedBuffUpdate();
         }
}
void InterruptTimer1() interrupt 3
{
TH1 = 0xB0; //加載 T1 重載值
TL1 = 0x3C;
if(tmr1s>=20)
{
        val++;
        if(val>=60)
        {
                val=0;
                k1=~k1;
        }
        tmr1s=0;
}
else tmr1s++;
        
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:213173 發(fā)表于 2019-5-14 06:53 | 只看該作者
就按普通51的模式設(shè)置定時(shí)器,下載時(shí)不要勾選“使能6T模式”
void ConfigTimer1(void)  //50毫秒@12.000MHz
{
        TMOD= 0x10;                //設(shè)置定時(shí)器模式
        TL1 = 0xB0;                //設(shè)置定時(shí)初值
        TH1 = 0x3C;                //設(shè)置定時(shí)初值
        TF1 = 0;                        //清除TF1標(biāo)志
        TR1 = 1;                        //定時(shí)器1開始計(jì)時(shí)
}
回復(fù)

使用道具 舉報(bào)

板凳
ID:123289 發(fā)表于 2019-5-14 07:59 | 只看該作者
注意一下,主頻時(shí)鐘是否設(shè)置成取晶振頻率。
回復(fù)

使用道具 舉報(bào)

地板
ID:451718 發(fā)表于 2019-5-14 11:42 | 只看該作者
yzwzfyz 發(fā)表于 2019-5-14 07:59
注意一下,主頻時(shí)鐘是否設(shè)置成取晶振頻率。

在哪里設(shè)置? 還請(qǐng)?jiān)敿?xì)說(shuō)來(lái),這兩天被這個(gè)定時(shí)器搞暈了。
回復(fù)

使用道具 舉報(bào)

5#
ID:451718 發(fā)表于 2019-5-14 14:19 | 只看該作者
問(wèn)題找到了。  還真是在代碼里面,看花眼了。  低級(jí)錯(cuò)誤。  中斷里面重載初值時(shí),高位和低位搞返了。哎。
回復(fù)

使用道具 舉報(bào)

6#
ID:537018 發(fā)表于 2019-5-15 19:14 | 只看該作者
將主頻時(shí)鐘設(shè)置成晶振頻率
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表