RM新时代网站-首页

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

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

3天內(nèi)不再提示

RTC時鐘偶發(fā)性延時或超時該怎么辦?

ZLG致遠電子 ? 2024-12-18 11:37 ? 次閱讀

導讀

嵌入式系統(tǒng)運行時,RTC 時鐘受多種因素干擾致延時或超時,影響系統(tǒng)時間同步與功能穩(wěn)定。本文將提出從硬件適配到軟件算法優(yōu)化的綜合性方案,以解決此問題,保障 RTC 時鐘的精確性與可靠性。

引起延時和超時的主要原因是計時系統(tǒng)使用的基準頻率32.768Khz精度不夠。MCU片內(nèi)自帶的RTC功能電路由于受到芯片集成工藝的影響一般計量精度都比較差而且功耗也比較大,一般在對時鐘精度要求比較高的情況下建議直接使用外部RTC專用時鐘芯片,比如PCF8563/PCF85063,下表列出了不同RTC芯片的時鐘精度。

60eae2dc-bcf1-11ef-8084-92fbcf53809c.jpg

圖1 不同RTC芯片的時鐘精度

在選擇高精度的RTC時鐘芯片后,還需注意32.768Khz晶振的匹配電容選型是否符合晶振設計手冊的要求。

610a52a2-bcf1-11ef-8084-92fbcf53809c.jpg

圖2 晶振的匹配電容負載電容CL 的計算公式:

6116eaf8-bcf1-11ef-8084-92fbcf53809c.png

其中:CL1、CL2 :晶振匹配電容;Cstray:電路板雜散電容

612f1024-bcf1-11ef-8084-92fbcf53809c.png

圖3 晶體的連接方式及器件參數(shù)

代入數(shù)值:CL =[(15*15)/(15+15)]+5=12.5pF以上是通過硬件電路設計的優(yōu)化來提高時鐘精度,但由于生產(chǎn)工藝、芯片差異等其它不可控因素的存在,實際的時鐘精度會存在一定偏差,在時鐘頻偏穩(wěn)定的情況下還可以通過軟件方式進一步對時鐘精度進行補償,即通過設置RTC內(nèi)部的補償寄存器來補償時間。補償寄存器的基本原理是通過增加或者減少時鐘的修正脈沖來補償時間而不是改變晶振的頻率,如圖4所示,補償寄存器的bit7設置補償?shù)哪J?,bit[6:0]設置補償?shù)闹怠?/p>614f5a14-bcf1-11ef-8084-92fbcf53809c.jpg

圖4 補償寄存器描述

1. 補償值計算方法

計算流程如圖5所示。

61742934-bcf1-11ef-8084-92fbcf53809c.png

圖5 補償值計算方法一

  1. 先用頻率計或者高精度的示波器測量PCF8563芯片pin7腳CLKOUT的頻率Fmeas(軟件要先設置pin7輸出才可測到波形);
  2. 轉(zhuǎn)化成時間tmeas;
  3. 計算和理想時鐘32.768KHz周期的偏差Dmeas;
  4. 根據(jù)測量值計算ppm的偏移量;
  5. 根據(jù)設置模式計算補償寄存器的值,如圖中32768.48Hz計算得到的ppm偏移量是14.648ppm,如果是模式0,則算出來的補償值為3.375,四舍五入取值3。

根據(jù)補償計算方式的算式整合簡化,若測得實際頻率F實測值,ppm的偏移量Eppm可以用以下公式快速計算:

618bb266-bcf1-11ef-8084-92fbcf53809c.png

如上補償校準計算框架圖32768.48Hz算出來的值也是14.648。由此可見,若F實測值≥32768Hz,則算出的補償值≥0;若F實測值<32768Hz,則算出的補償值<0。

2. 補償值計算方法二

61928870-bcf1-11ef-8084-92fbcf53809c.png

圖6 補償值計算方法二

如圖6所示,±20ppm的晶振頻率每1 ppm的偏差會導致每天偏差0.0864 s。在沒有測試條件測頻率的情況下,可以先測試24h下的時間偏差,時間走的快補償正值,時間走的慢補償負值,比如某個RTC 24小時下測得比北京時間快7s,那么先算出ppm的偏移量Eppm = 7/0.0864 = 81.0185 ppm,然后算出模式0下補償寄存器的值為81.0185/4.34 = 18.67,取值19;算出模式1下補償寄存器的值為81.0185/4.069 = 19.9119.91,取值20。再比如某個RTC 24小時下測得比北京時間慢7s,那么先算出ppm的偏移量Eppm = 7/0.0864 = 81.0185 ppm,然后算出模式0下補償寄存器的值為81.0185/4.34 = 18.67,取值-19;算出模式1下補償寄存器的值為81.0185/4.069 = 19.91,取值-20。

注意:0.0864 s的計算方式為:ppm的單位是百萬分之一,20ppm一天的偏差描述為(24小時*60分*60秒*20)/106 = 1.728s,所以1ppm一天的偏差時間為1.728s/20=0.0864 s。其他精度的晶振也可以用此類方式推算。

如果產(chǎn)品對RTC精度要求較高,使用常規(guī)RTC通過以上校準/補償仍達不到產(chǎn)品要求,就需要考慮選用高精度的RTC芯片,如RX8025T。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17123

    瀏覽量

    350972
  • 時鐘
    +關注

    關注

    10

    文章

    1733

    瀏覽量

    131446
  • RTC
    RTC
    +關注

    關注

    2

    文章

    538

    瀏覽量

    66458
收藏 人收藏

    評論

    相關推薦

    RTC時鐘偶發(fā)性延時和超前現(xiàn)象解決方案

    在非常溫的工作環(huán)境下,RTC時鐘出現(xiàn)偶發(fā)性延時或超時現(xiàn)象,成熟的RTC電路設計看似簡單,但如
    的頭像 發(fā)表于 11-21 14:57 ?1w次閱讀
    <b class='flag-5'>RTC</b><b class='flag-5'>時鐘</b><b class='flag-5'>偶發(fā)性</b><b class='flag-5'>延時</b>和超前現(xiàn)象解決方案

    如何用大數(shù)據(jù)分析來解決偶發(fā)性異常問題?

    在研發(fā)、生產(chǎn)過程中,如何發(fā)現(xiàn)和解決偶發(fā)性異常問題,是電子工程師始終想攻克的技術點,利用互聯(lián)網(wǎng)思維,將大數(shù)據(jù)分析引入傳統(tǒng)測量儀器,是否能碰撞出新的火花?
    的頭像 發(fā)表于 03-01 14:44 ?3515次閱讀

    CYT2B97低功耗模式下RTC喚醒偶發(fā)性失敗的原因?

    , CY_RTC_ALARM_1)!= CY_RET_SUCCESS); 2.設置進入DSM Cy_SysPm_DeepSleep(CY_SYSPM_WAIT_FOR_INTERRUPT); MCU進入DSM后,等待設置的喚醒時間,但是出現(xiàn)偶發(fā)性(概率比較低),到達時間后
    發(fā)表于 02-02 07:20

    嵌入式設備在遠端運行,會有偶發(fā)性代碼跑飛的情況,無法到現(xiàn)場調(diào)試的情況下如何檢查出問題?

    (沒什么積分希望大家一起討論一下) 現(xiàn)狀:目前設備在遠端運行,會有偶發(fā)性代碼跑飛的情況 ,無法到現(xiàn)場調(diào)試的情況下如何檢查出問題? 解決:在設備端增加日志報告上傳(通過4G模塊)機制,希望可以通過日志
    發(fā)表于 07-22 15:05

    AD9129偶發(fā)性底噪過高,請問怎么解決?

    你好,我在使用AD9129中發(fā)現(xiàn),AD9129輸出會出現(xiàn)偶發(fā)性底噪過高,原因不明,出現(xiàn)幾率大約1/10,即對AD9129按照芯片手冊推薦的初始化序列進行配置后,有幾率會出現(xiàn)底噪過高,主信號還是有的
    發(fā)表于 08-13 09:28

    分享下一些嵌入式隱形問題或偶發(fā)性問題的定位思路

    偶發(fā)性問題的定位思路。 一、有線類 第一步,查看總線硬件特性。顧名思義,有線類產(chǎn)品分為uart、spi、i2c、sdio、u***等等,如果出現(xiàn)問題,由...
    發(fā)表于 08-06 08:00

    如果STM32 RTC實時時鐘要獲取到毫秒級的時鐘怎么辦

    STM32的實時時鐘RTC是什么?如果STM32 RTC實時時鐘要獲取到毫秒級的時鐘怎么辦?
    發(fā)表于 11-22 06:08

    為什么ESP32對接騰訊云ASR平臺會出現(xiàn)偶發(fā)性的簽名錯誤問題呢

    為什么ESP32對接騰訊云ASR平臺會出現(xiàn)偶發(fā)性的簽名錯誤問題呢?怎樣去解決這個問題?
    發(fā)表于 12-23 09:24

    交換機芯片KSZ9896偶發(fā)性死機

    有誰用過microchip的交換機芯片KSZ9896嗎?現(xiàn)在遇到有的板子交換機芯片偶發(fā)性死機,用到的5個PHY網(wǎng)口燈都滅了。附件是電路圖。已經(jīng)檢查過晶振、電源,沒發(fā)現(xiàn)明顯問題。有用過的能提供點思路嗎?
    發(fā)表于 06-11 09:57

    原子的P100下載器經(jīng)常偶發(fā)性出現(xiàn)下載失敗如何解決?

    原子的P100下載器經(jīng)常偶發(fā)性出現(xiàn)下載失敗在同一個板子上死活刷不進去能刷進去就刷進去了 而且這個問題很有意思 看提示 目標芯片連接成功 解除讀保護成功 然后就開始失敗
    發(fā)表于 09-28 08:06

    AD9129偶發(fā)性底噪過高怎么解決?

    你好,我在使用AD9129中發(fā)現(xiàn),AD9129輸出會出現(xiàn)偶發(fā)性底噪過高,原因不明,出現(xiàn)幾率大約1/10,即對AD9129按照芯片手冊推薦的初始化序列進行配置后,有幾率會出現(xiàn)底噪過高,主信號還是有的
    發(fā)表于 12-12 08:33

    分享一個案例告訴你如何保證RTC時鐘的精確度

    在非常溫的工作環(huán)境下,RTC時鐘出現(xiàn)偶發(fā)性延時或超時現(xiàn)象,成熟的RTC電路設計看似簡單,但如
    發(fā)表于 11-29 12:09 ?7498次閱讀

    RTC時鐘偶發(fā)性延時或超時怎么辦?

    在非常溫的工作環(huán)境下,RTC時鐘出現(xiàn)偶發(fā)性延時或超時現(xiàn)象。成熟的RTC電路設計看似簡單,但如
    發(fā)表于 02-11 10:52 ?0次下載
    <b class='flag-5'>RTC</b><b class='flag-5'>時鐘</b><b class='flag-5'>偶發(fā)性</b><b class='flag-5'>延時或</b><b class='flag-5'>超時</b><b class='flag-5'>該</b><b class='flag-5'>怎么辦</b>?

    2013 款路虎神行者 2 車偶發(fā)性無法起動

    2013款路虎神行者2車偶發(fā)性無法起動蔡永福故障現(xiàn)象故障診斷故障排除一輛2013款路虎神行者2車,搭載2.0LSi4Petrol發(fā)動機,累計行駛里程約為4.5萬km。車主反映,車輛偶發(fā)性無法起動
    的頭像 發(fā)表于 06-06 10:00 ?375次閱讀
    2013 款路虎神行者 2 車<b class='flag-5'>偶發(fā)性</b>無法起動

    盛顯科技:投影融合處理器連接出現(xiàn)超時,怎么辦?

    了連接嘗試的失敗。這樣的情形無疑會給我們的使用帶來諸多不便與困擾。那么您知道投影融合處理器連接出現(xiàn)超時怎么辦嗎?下面盛顯科技小編為您介紹: 投影融合處理器連接出現(xiàn)超時,可采取以下處
    的頭像 發(fā)表于 11-06 10:58 ?163次閱讀
    盛顯科技:投影融合處理器連接出現(xiàn)<b class='flag-5'>超時</b>,<b class='flag-5'>該</b><b class='flag-5'>怎么辦</b>?
    RM新时代网站-首页