久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 關(guān)于單片機(jī)定時(shí)器定時(shí)不準(zhǔn)確的問(wèn)題 [打印本頁(yè)]

作者: 這一生只為你    時(shí)間: 2024-5-14 21:50
標(biāo)題: 關(guān)于單片機(jī)定時(shí)器定時(shí)不準(zhǔn)確的問(wèn)題
請(qǐng)教一下大家,最近在用STC8G1K08A單片機(jī)做一個(gè)小東西,使用到了定時(shí)器0和定時(shí)器1,參照官方設(shè)定的1毫秒,然后中斷里重復(fù)1000次,作為1秒的精確延時(shí),但是實(shí)際發(fā)現(xiàn)誤差很大,不知道是我設(shè)置的問(wèn)題還是?之前用STC15W104和STC15F104都沒(méi)有問(wèn)題,延時(shí)很精確(相比較而言)

這是中斷里面的程序:

                if(timer_1_ms < 1000)timer_1_ms++;
                        else
                        {
                                 timer_1_ms = 0;
                                if(timer_s > 0)timer_s--;
                                        else
                                        {
                                                timer_s = 0;
                                                status = 0;//若時(shí)間到,那就在LED熄滅的時(shí)候進(jìn)入到休眠模式
                                        }
                        }



這是官方的設(shè)置



軟件的版本是V6.94E,目前最新的版本。







作者: hhh402    時(shí)間: 2024-5-15 00:19
誤差很大,具體是多大?STC單片機(jī)主頻誤差0.5%,所以誤差0.5%以內(nèi)是正常的,1小時(shí)誤差0.5%=18S,24小時(shí)誤差=18*24=432秒。只要在這個(gè)范圍內(nèi)是正常的。
作者: rayin    時(shí)間: 2024-5-15 07:28
單片機(jī)的晶振是相對(duì)精確而已, 要提高精度就要用realtime IC: DS12C887 等 ; 要求更高就用天線接GPS的授時(shí)信號(hào).
作者: xiaobendan001    時(shí)間: 2024-5-15 08:00
而且每次刷機(jī)設(shè)置的都不太一樣,要精確定時(shí)還是得外部晶振
作者: 這一生只為你    時(shí)間: 2024-5-15 08:50
hhh402 發(fā)表于 2024-5-15 00:19
誤差很大,具體是多大?STC單片機(jī)主頻誤差0.5%,所以誤差0.5%以內(nèi)是正常的,1小時(shí)誤差0.5%=18S,24小時(shí)誤差 ...

可不止,十秒的誤差都有兩三秒了,你說(shuō)的那些誤差都在可接受范圍內(nèi),我這里的誤差根本沒(méi)法用啊。。。
作者: 這一生只為你    時(shí)間: 2024-5-15 10:38
rayin 發(fā)表于 2024-5-15 07:28
單片機(jī)的晶振是相對(duì)精確而已, 要提高精度就要用realtime IC: DS12C887 等 ; 要求更高就用天線接GPS的授時(shí)信 ...

我不需要特別高的精度,電路很簡(jiǎn)單,我只需要延時(shí)十分鐘,可接受誤差在一分鐘以內(nèi)就好。
作者: wulin    時(shí)間: 2024-5-15 10:49
這一生只為你 發(fā)表于 2024-5-15 08:50
可不止,十秒的誤差都有兩三秒了,你說(shuō)的那些誤差都在可接受范圍內(nèi),我這里的誤差根本沒(méi)法用啊。。。

單靠程序片段看不出毛病在哪
作者: yaosongjin    時(shí)間: 2024-5-15 11:44
這一生只為你 發(fā)表于 2024-5-15 08:50
可不止,十秒的誤差都有兩三秒了,你說(shuō)的那些誤差都在可接受范圍內(nèi),我這里的誤差根本沒(méi)法用啊。。。

這么大的誤差會(huì)不會(huì)是初始化配置就有問(wèn)題?可以用示波器看下定時(shí)1MS實(shí)際測(cè)試是多少?
作者: npn    時(shí)間: 2024-5-15 12:15
自動(dòng)重載初值,不要用手動(dòng)重載,溢出了會(huì)自己裝進(jìn)去,中斷里不要賦值TH0,TL0寄存器。
加誤差補(bǔ)償處理且使用外部晶振,1個(gè)月誤差不到1分鐘的都有。
作者: 明日之星8    時(shí)間: 2024-5-15 19:43
void Timer0_Isr(void) interrupt 1
{
}

void Timer0_Init(void)                //50毫秒@11.0592MHz
{
        AUXR &= 0x7F;                        //定時(shí)器時(shí)鐘12T模式
        TMOD &= 0xF0;                        //設(shè)置定時(shí)器模式
        TL0 = 0x00;                                //設(shè)置定時(shí)初始值
        TH0 = 0x4C;                                //設(shè)置定時(shí)初始值
        TF0 = 0;                                //清除TF0標(biāo)志
        TR0 = 1;                                //定時(shí)器0開(kāi)始計(jì)時(shí)
        ET0 = 1;                                //使能定時(shí)器0中斷
}

建議用12T模式,50毫秒@11.0592MHz,每秒只進(jìn)中斷20次,頻率要設(shè)置成11.0592MHz
作者: T0m    時(shí)間: 2024-5-15 22:17
直接做軟件定時(shí)器吧,用邏輯分析儀抓一抓時(shí)間,或者改改值.

作者: npn    時(shí)間: 2024-5-15 22:44
T0m 發(fā)表于 2024-5-15 22:17
直接做軟件定時(shí)器吧,用邏輯分析儀抓一抓時(shí)間,或者改改值.

邏輯分析儀里面通常有個(gè)晶振,準(zhǔn)確度與該晶振有關(guān)。
作者: hhh402    時(shí)間: 2024-5-17 20:40
如果誤差超過(guò)0.5%就是你的程序有問(wèn)題,把你的程序貼出來(lái),包括定時(shí)器設(shè)置函數(shù),定時(shí)器中斷函數(shù),單片機(jī)主頻。




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 日本中文在线观看 | 国产一区在线视频 | 四虎在线观看视频 | 天天爽夜夜爽夜夜爽精品视频 | 成人国产精品一区二区 | 性视频在线| 久久久久国产精品夜夜夜夜夜 | 久久久久久久97 | 欧美在线视频免费观看 | 日韩一级在线观看 | 亚洲国产精品久久久久 | 亚洲一级在线 | 成年人国产 | 久久久精品在线观看 | 黄视频网站在线观看 | 亚洲第一色网 | 国产精品久久久久久久成人午夜 | 男女啪啪无遮挡 | 中文字幕一区二区三区四区 | 岛国精品在线播放 | 日韩黄网| 一级免费av | 日韩欧美不卡 | 欧美精品www| 无遮挡在线观看 | 国产精品国产三级国产aⅴ浪潮 | 国产精品久久久久久久 | 亚洲另类自拍 | 日韩一区二区三区在线播放 | 欧美综合视频 | 毛片91| 一区二区不卡视频 | 日韩视频在线观看 | 欧美成人三级 | 午夜理伦三级理论 | 国产午夜三级 | www.狠狠操.com| 亚洲另类视频 | 亚洲伊人色 | 女人av在线 | 成人毛片在线观看 |