在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于軟件提高時鐘準確度算法的應用及研究

電子設計 ? 來源:計時器 ? 作者:黃沛芳 ? 2021-03-26 15:16 ? 次閱讀

通過對引起實時時鐘計時誤差因數的分析,給出了一種提高實時時鐘長期計時準確度的實用而有效的軟件方法。該方法具有成本低、易實現、通用性強、徹底校正等優點。

電子計時器通常以石英晶振為時鐘源。時鐘源的頻率通常為幾十kHz乃至幾十MHz,而常用時鐘的最小計時單位一般在0.01s~1s。高頻的時鐘源脈沖通過分頻器后產生基本定時脈沖。電子計時器的計時部分就是對基本定時脈沖進行累加,產生秒、分、時等時間信息乃至日、月、年等日期信息。

1 引起計時誤差的因數

一個常規電子計時器的計時準確度,取決于晶振標稱頻率(fs)與實際頻率(fo)的頻率偏差和晶振頻率的時漂、溫漂等離散參數。普通晶振的實際頻率與標稱頻率有較大的偏差,可達萬分之五(5‰),折算到一天計時誤差就是43.2s。一般室內氣溫變化在每天10℃左右,對應晶振頻率溫漂<10-5,若以一段較長的時間取溫漂的平均值則更小。因此電子計時器的誤差主要取決于晶振實際頻率與標稱頻率的偏差。

2 減少計時誤差的方法

2.1 純硬件方法

對于純硬件計時電路,因分頻系數N固定不變,要提高計時準確度只能調整fo,使得它盡可能接近于fs。常規減少計時誤差的方法是:微調元件L、C、R的參數,調節硬件頻率,使得時鐘源的頻率誤差減小。但此方法操作復雜,沒有一定的電子技術知識和專用儀器很難校準,而且會降低晶振頻率穩定度。

2.2 純軟件方法

微控制器控制的實時時鐘,可以采用軟件的方法消除晶振實際頻率與標稱頻率間誤差引起的計時誤差。

基于軟件提高時鐘準確度算法的應用及研究

由微控制器控制的實時時鐘,可以用軟件模擬,將歸入總的計時程序中,從而消除fs和fo間偏差引來的計時誤差。對于專用硬件時鐘電路如S1320、PCF8583等,可以采用每小時或每10分鐘讀出時間,然后乘上再寫回芯片的方法校正。對于采用可編程分頻定時器,由軟件模擬時鐘功能的軟件實時時鐘,則有更好的提高計時準確度的方法。因為定時器的分頻系數是可以動態改變的,如89C52內置的16位計數器,分頻系數可以在1~216內任意選取。令N=Ns作為分頻系數寫入計數器,這樣每個基本計時周期TN=TNS,從而實現軟件校正定時周期。

×Ns剛好為整數時,可以使得計時誤差為0。大部分的情況×Ns并不是整數,若將四舍五入后的值作為Ns,就會帶來量化誤差,最大可達,這是一個不容忽視的問題。以12MHz的89C52 T2定時器定時10ms為例,每天最大量化誤差累加是:24×3600÷(2×10000)=4.32s。若在片內RAM中定義1個字節尾數,令它的滿碼值為,則最大量化誤差就從原來的下降到。對應于上述的10ms定時程序,其最大量化誤差的累加值由原來的4.32秒/天減少到0.016875秒/天,這是很大的改進。根據精度要求,可以在片內RAM中定義2個字節,令它的滿碼值為,這樣最大量化誤差就可降為。減少量化誤差的具體算法是:對于使用89C52的T2定時器,若標稱為12MHz的晶振實際長期平均振蕩頻率fo=12.0006MHz,量化精度取1字節,取TNS=10ms,則分頻系數為:

Ni為第i次定時值,可能是10000或10001,這取決于NTi的進位;NTi為第i次尾數暫存值。

每次定時中斷服務程序均執行(1)式,取得第i 次的定時計數值,然后實時時鐘增加10ms,完成時鐘功能。值得注意的是,Ni是實際的計數值,至于實際寫入特定定時器的數值,則須根據具體定時器的遞減、遞加計時性質分別寫入Ni或Ni的補碼,同時定時器 在溢出到新的定時值裝入并開始新定時周期這段時間,將TLOAD考慮在內。例如89C52 T2工作于自動重裝定時初值、遞加定時方式時,實際寫入定時器T2的捕獲/自動重裝載寄存器(Rcap2H,Rcap2L)的值是Ni的補碼,即65536-Ni;而對于89C52 T0和T1定時器則實際寫入的定時初值是:Ni的補碼+TLOAD對應的機器周期數。

3 測量晶振實際長期振蕩頻率

沒有專用儀器,怎樣測得晶振實際長期振蕩頻率?有一個很簡單的方法。以標稱頻率下的定時計數值Ns作為實際計數值,在電臺報時時將時間設置正確,然后讓它運行一段較長的時間,再與電臺的報時比較求出誤差的秒數,即可算出實際頻率。例如晶振標稱頻率是12MHz,時鐘運行了10天,快了432s,則

若將上述算法編成程序,讓用戶直接輸入N和NT的值;或輸入運行了多少天、時、分、秒,快或慢了多少秒,讓系統自動算出N和NT,將會為從根本上校準時鐘帶來極大方便。任何人都可以輕松地提高時鐘準確度而無需專業知識和專用儀器。

現在微控制器已廣泛應用于人們日常生活的各個方面,電子時鐘也隨著它融入到各種電器和設備中,如專門時鐘功能的石英表和各種附帶電子計時器的電器如手機、普通液晶顯示電話、VCD機、DVD機、電視及高檔音響、空調遙控器、電力系統微機自動化設備等。高檔專用計時器如高檔石英表,因為計時是它的主功能,須保證計時準確度而對計時時鐘源準確度要求嚴格,每天誤差在1s以下。以上提到的其它電器,其時鐘只是它的一個附帶功能,出廠時一般不嚴格校正,甚至根本不做任何校正。所以誤差通常在1秒/天以上,有些達10秒/天以上,每天都需校正,否則運行幾天就會因誤差太大而變得不可信,令用戶不勝煩惱。

在電力系統中,無人值班變電站須安裝無功自動控制設備。它根據一天中的不同時間段和電網無功情況自動投退電容器組,使得電網的功率因數盡可能接近于1,以利于經濟運行。但有些設備內部時鐘每天誤差>5分鐘。若將本文算法編入計時程序中,讓用戶自己校正定時參數,將大大提高各種附帶時鐘的計時準確度。

將基于軟件提高實時時鐘準確度的算法應用于普通石英晶振,利用89C52 T2定時器的軟實時時鐘,未作校正前每天快11s;進行軟件計時校正后,每10天的計時誤差<1s。本文提出的基于軟件提高時鐘準確度的算法,具有極高的實用價值。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 晶振
    +關注

    關注

    34

    文章

    3158

    瀏覽量

    69323
  • 計時器
    +關注

    關注

    1

    文章

    426

    瀏覽量

    33352
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    準確度、精密度和精確

    最終正確地評定測量結果時,通常要用到準確度、精密度和精確三個概念。它們的意義如下:1、準確度指測量值與真值的接近程度,反映系統誤差的影響,系統誤差小則準確度高。2、 精密度指測量值重
    發表于 02-08 09:21

    怎樣提高酸度計的級別和儀器的準確度

    酸度計的級別是按其指示器(簡稱電計)的分度值(分辨率或最小顯示值)表示的,例如:分度為0.1pH的儀器稱為0.1級儀器;最小顯示值為0.001pH的儀器稱為0.001級儀器,等等。而儀器的準確度是電
    發表于 03-23 11:00

    基于LTC6802的電池管理系統準確度提升

    DN471 - 簡單的校準電路最大限度地提高了鋰離子電池管理系統中的準確度
    發表于 05-06 10:09

    如何提高秒表計數器準確度

    之間工作。問題是,當我把每一秒的讀數打印到屏幕上時,我總是得到993個數的差值,而不是我預期的1000個數。有誰能提供一些關于如何提高秒表計數器準確度的建議?CyrPjJava.CaseVo1.0Zip668.2 K
    發表于 09-27 12:32

    什么是準確度/精確

    什么是準確度(真實)?什么是精確
    發表于 01-25 07:12

    在ADC輸入內阻不配情況下提高ADC準確度方法

    在ADC輸入內阻不配情況下提高ADC準確度方法
    發表于 10-19 07:39

    ADAS3022怎樣能提高ADC的測量準確度呢?

    在調試ADAS3022這顆ADC時每次測量會有30+mV的波動,信號源電壓波動不到0.1mV,怎樣能提高ADC的測量準確度呢?下圖為不同次測量的值(信號源1.1V),感覺誤差挺大:
    發表于 12-04 07:39

    準確度的取樣保持電路

    準確度的取樣保持電路
    發表于 04-11 10:48 ?806次閱讀
    高<b class='flag-5'>準確度</b>的取樣保持電路

    提高準確度的取樣保持電路

    提高準確度的取樣保持電路
    發表于 04-11 10:51 ?794次閱讀
    <b class='flag-5'>提高</b>了<b class='flag-5'>準確度</b>的取樣保持電路

    通過視覺和運動的緊密集成,提高準確度和靈活性

    通過視覺和運動的緊密集成,提高準確度和靈活性。
    發表于 03-21 16:11 ?0次下載

    基于軟件提高實時時鐘準確度算法

    電子計時器通常以石英晶振為時鐘源。時鐘源的頻率通常為幾十kHz乃至幾十MHz,而常用時鐘的最小計時單位一般在0.01s~1s。高頻的時鐘源脈沖通過分頻器后產生基本定時脈沖。電子計時器的
    的頭像 發表于 10-16 08:04 ?2984次閱讀
    基于<b class='flag-5'>軟件</b><b class='flag-5'>提高</b>實時<b class='flag-5'>時鐘</b><b class='flag-5'>準確度</b>的<b class='flag-5'>算法</b>

    影響示波器測量準確度的因素,有哪些提高準確度的使用技巧

    使用技巧就顯得尤為重要。當然,提高測量準確度最有效的解決辦法是增加ADC位數,美國力科公司(LeCroy)率先推出12位ADC示波器WaveRunner HRO 6Zi系列,使得示波器在測量準確度方面有了明顯的改觀。
    發表于 10-09 09:45 ?2474次閱讀

    LTC2450 - 低噪聲、纖巧、16 位增量累加 ADC 提高系統準確度

    LTC2450 - 低噪聲、纖巧、16 位增量累加 ADC 提高系統準確度
    發表于 03-21 11:11 ?8次下載
    LTC2450 - 低噪聲、纖巧、16 位增量累加 ADC <b class='flag-5'>提高</b>系統<b class='flag-5'>準確度</b>

    探頭及附件的準確度如何驗證?

    探頭及附件的準確度如何驗證呢,今天我們通過一則實例來學習一下。
    的頭像 發表于 06-06 09:34 ?692次閱讀
    探頭及附件的<b class='flag-5'>準確度</b>如何驗證?

    濕度傳感器的哪些特性影響測量準確度

    傳感器的測量算法會根據當前環境溫度進行修正,以提高準確度。此外,溫度變化還會影響傳感器元件的性能,例如固態濕度傳感器中的材料特性與溫度相關。因此,正確校準溫度是確保濕度測量準確性的重要
    的頭像 發表于 12-25 14:28 ?1427次閱讀
    主站蜘蛛池模板: 日韩毛片免费看 | 久久精品国产亚洲aa | 日本福利小视频 | 午夜神马福利免费官方 | 91大神在线观看视频 | 视频在线观看h | 国产精品久久久久久久久免费 | 精品久久久久国产免费 | 久久青草国产免费观看 | 国产精品一区牛牛影视 | 成人午夜性a一级毛片美女 成人午夜性视频欧美成人 成人小视频在线 | 特级片免费看 | 正在播放羽月希与黑人bd在线 | 日韩精品一区二区在线观看 | 日本不卡一区 | 狠狠色噜狠狠狠狠色综合久 | 国产午夜精品理论片久久影视 | 午夜网站在线播放 | 亚洲va久久久噜噜噜久久天堂 | 麻豆国产一区二区在线观看 | 老司机成人精品视频lsj | 午夜三级在线 | 啪啪网站色大全免费 | 人人看人人做人人爱精品 | 禁h粗大太大好爽好涨受不了了 | 天天摸夜班摸天天碰 | 三浦理惠子中文在 | 中文字幕天天躁夜夜狠狠综合 | 上海一级毛片 | 美女喷白浆 | 天天在线精品视频在线观看 | 久久 在线播放 | 日本亚洲黄色 | 男女在线免费视频 | 免费人成网站 | 三级毛片免费观看 | 中文字幕三级久久久久久 | 成人99| 日本视频一区二区三区 | 在线免费观看一级片 | 丁香色综合 |