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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

單片機(jī)定時(shí)器中的實(shí)時(shí)時(shí)鐘(RTC)注意事項(xiàng)

姚小熊27 ? 來(lái)源:英銳恩 ? 作者:英銳恩 ? 2020-06-29 09:28 ? 次閱讀

實(shí)時(shí)時(shí)鐘(RTC)是專(zhuān)用于維持一秒時(shí)基的計(jì)時(shí)器。此外,RTC通常用于在軟件或硬件中跟蹤時(shí)鐘時(shí)間和日歷日期。RTC的許多功能是非常專(zhuān)業(yè)的,是維持高精度和非??煽康牟僮魉匦璧?。單片機(jī)外部有RTC設(shè)備,可與I2C或SPI總線接口。

一、實(shí)時(shí)時(shí)鐘概述

實(shí)時(shí)時(shí)鐘的基本功能是產(chǎn)生一秒的間隔并保持連續(xù)計(jì)數(shù)。如下圖所示,該時(shí)序圖描述了RTC的基本功能。

單片機(jī)定時(shí)器中的實(shí)時(shí)時(shí)鐘(RTC)注意事項(xiàng)

還顯示了程序功能A,該功能讀取秒計(jì)數(shù)器并安排事件B在未來(lái)三秒發(fā)生。此操作稱(chēng)為警報(bào)。請(qǐng)注意,秒計(jì)數(shù)器連續(xù)運(yùn)行,并且不會(huì)停止和啟動(dòng)。對(duì)于RTC有兩個(gè)主要要求,分別是準(zhǔn)確性和連續(xù)運(yùn)行。下圖為RTC的常見(jiàn)硬件功能:

單片機(jī)定時(shí)器中的實(shí)時(shí)時(shí)鐘(RTC)注意事項(xiàng)

RTC通常具有自己的內(nèi)部振蕩器和外部晶體,并可以選擇使用外部頻率基準(zhǔn)。所有時(shí)鐘源均以32768Hz運(yùn)行。外部時(shí)鐘源允許使用非常精確和穩(wěn)定的設(shè)備,例如TCXO(溫度補(bǔ)償晶體振蕩器)。

使用多路復(fù)用器選擇時(shí)鐘源,并將其輸入到預(yù)分頻器中,該預(yù)分頻器將時(shí)鐘分頻為32768(215),以產(chǎn)生一秒的時(shí)鐘。

基本上RTC都具有秒計(jì)數(shù)器,通常為32位或更多。一些RTC具有專(zhuān)門(mén)的計(jì)數(shù)器來(lái)跟蹤一天中的時(shí)間和日歷日期。

沒(méi)有時(shí)間和日期計(jì)數(shù)器的基本RTC為此目的使用軟件。常見(jiàn)的選擇是來(lái)自輸出引腳的1Hz方波。RTC將具有多個(gè)可能的事件來(lái)生成處理器中斷。

RTC通常具有專(zhuān)用的電源引腳,以允許在單片機(jī)的其余部分掉電時(shí)進(jìn)行操作。該電源引腳通常連接到電池或單獨(dú)的電源。

二、RTC精度和頻率補(bǔ)償

RTC的精度取決于32,768Hz時(shí)鐘源。在設(shè)計(jì)良好的晶體振蕩器中,誤差的主要來(lái)源是晶體。外部TCXO可用于高度精確的定時(shí),或者特殊的頻率補(bǔ)償技術(shù)可用于較便宜的晶體和內(nèi)部振蕩器。晶體誤差的三個(gè)主要來(lái)源:

1.初始電路和晶體容差。

2.晶體隨溫度漂移。

3.晶體老化。

下圖為一些與RTC精度有關(guān)的概念:

單片機(jī)定時(shí)器中的實(shí)時(shí)時(shí)鐘(RTC)注意事項(xiàng)

該圖上的深藍(lán)色跡線顯示了典型的初始公差以及隨溫度的變化。粉色軌跡僅顯示溫度誤差。補(bǔ)償溫度的關(guān)鍵在于,晶體的行為是眾所周知的,并可以通過(guò)二次方程式進(jìn)行預(yù)測(cè)。如果在制造電路板并且已知溫度之后測(cè)量初始誤差,則可以補(bǔ)償最大的誤差源。

經(jīng)過(guò)仔細(xì)補(bǔ)償后,黃色面積是準(zhǔn)確度的合理目標(biāo)。請(qǐng)記住,一年中1 ppm大約需要30秒。晶體老化難以彌補(bǔ)。幸運(yùn)的是,老化通常每年只有幾ppm。

三、如何更改RTC時(shí)間

目前,有兩種方法可以更改RTC的時(shí)序,作為系統(tǒng)的一部分以補(bǔ)償錯(cuò)誤。如前面所講的,在秒計(jì)數(shù)器的每個(gè)周期內(nèi),可得到預(yù)分頻器所計(jì)數(shù)的振蕩器周期數(shù)。

前兩秒是通常的32768個(gè)周期。該軟件使用溫度讀數(shù)和初始誤差來(lái)確定振蕩器正在快速運(yùn)行,并且32768個(gè)周期實(shí)際上為0.99990秒。為了補(bǔ)償這個(gè)小誤差,該軟件會(huì)告訴RTC每四秒鐘將預(yù)分頻器的模數(shù)更改為32781,以增加一些時(shí)間。 下圖為預(yù)分頻器計(jì)數(shù)的振蕩器周期:

單片機(jī)定時(shí)器中的實(shí)時(shí)時(shí)鐘(RTC)注意事項(xiàng)

此技術(shù)的優(yōu)勢(shì)在于,從第二秒到第二秒的時(shí)間間隔變化很小。但是,該技術(shù)需要一個(gè)可調(diào)節(jié)的預(yù)分頻器和其他寄存器來(lái)保存特殊的預(yù)分頻計(jì)數(shù)和特殊計(jì)數(shù)應(yīng)用之間的秒數(shù)。

如果RTC沒(méi)有特殊的預(yù)分頻器來(lái)調(diào)整時(shí)序怎么辦?下圖為另一種方法,該方法沒(méi)有預(yù)分頻器:

單片機(jī)定時(shí)器中的實(shí)時(shí)時(shí)鐘(RTC)注意事項(xiàng)

在這種情況下,框中的數(shù)字是秒計(jì)數(shù)器。顯示的計(jì)數(shù)是100251,后跟100252。軟件一直在連續(xù)計(jì)算調(diào)整并跟蹤RTC秒計(jì)數(shù)。當(dāng)錯(cuò)誤累積到精確的一秒時(shí),軟件會(huì)增加或減少一秒以調(diào)整累積的錯(cuò)誤。

該技術(shù)的缺點(diǎn)是,在進(jìn)行調(diào)整時(shí),從秒到秒的變化很大。該技術(shù)具有與任何RTC兼容的優(yōu)勢(shì)。

四、 實(shí)時(shí)時(shí)鐘的安全性

安全性是一個(gè)有趣的要求。在某些應(yīng)用程序中,時(shí)間用于為客戶(hù)計(jì)費(fèi)以使用服務(wù)或消耗資源。關(guān)于防止或檢測(cè)RTC的黑客攻擊,有廣泛的實(shí)踐體系。技術(shù)的范圍從外殼的入侵檢測(cè)到單片機(jī)的特殊功能。

如果單片機(jī)上的RTC具有特殊的寄存器,可以允許軟件永久鎖定關(guān)鍵寄存器。一旦鎖定,就無(wú)法更改它們,并且可以防止它們被黑客入侵或失控。需要注意的是,更改時(shí)間需要完全復(fù)位單片機(jī)。

五、時(shí)間和日期

一些RTC具有硬件計(jì)數(shù)器,可以維護(hù)一天中的時(shí)間和日歷日期。這需要分鐘、小時(shí)、天、月、年的計(jì)數(shù)器,并考慮潤(rùn)年。時(shí)間和日歷日期也可以通過(guò)軟件保存。

一個(gè)突出的例子是time.h文件中C標(biāo)準(zhǔn)庫(kù)中的函數(shù)。對(duì)于微控制器,該系統(tǒng)可以基于RTC的秒計(jì)數(shù)器。必須編寫(xiě)四個(gè)小的自定義函數(shù)以完全支持time.h庫(kù)。

此處感興趣的一個(gè)函數(shù)由庫(kù)中的time()函數(shù)調(diào)用,該函數(shù)以從稱(chēng)為“紀(jì)元”的起點(diǎn)開(kāi)始的秒數(shù)返回時(shí)間,通常是1970年1月1日。通常,要讀取的自定義函數(shù)硬件計(jì)時(shí)器名為get_time()或類(lèi)似的變體。get_time()所做的所有操作都會(huì)讀取秒計(jì)數(shù)器并返回該值。圖書(shū)館會(huì)做剩下的事情,以秒為單位將此時(shí)間轉(zhuǎn)換為當(dāng)前日期和日期。

以上就是單片機(jī)開(kāi)發(fā)工程師分享的單片機(jī)定時(shí)器中的實(shí)時(shí)時(shí)鐘(RTC)。

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

    評(píng)論

    相關(guān)推薦

    RTC時(shí)鐘芯片+電池的應(yīng)用案例(一)

    實(shí)時(shí)時(shí)鐘,簡(jiǎn)稱(chēng)RTC,是廣泛應(yīng)用于電子產(chǎn)品的重要元器件。愛(ài)普生RTC實(shí)時(shí)時(shí)鐘具有高精度、高穩(wěn)定性和多功能的特點(diǎn),目前廣泛應(yīng)用于多個(gè)行業(yè)。下面通過(guò)幾個(gè)視頻來(lái)詳細(xì)了解一下愛(ài)普生
    的頭像 發(fā)表于 01-08 11:25 ?181次閱讀
    <b class='flag-5'>RTC</b><b class='flag-5'>時(shí)鐘</b>芯片+電池的應(yīng)用案例(一)

    實(shí)時(shí)時(shí)鐘芯片RTC

    FRTC8563是NYFEA徠飛公司推出的一款實(shí)時(shí)時(shí)鐘芯片,采用SOP-8封裝形式。這種封裝形式具有體積小、引腳間距小、便于集成等特點(diǎn),使得FRTC8563能夠方便地應(yīng)用于各種電子設(shè)備
    的頭像 發(fā)表于 10-22 11:33 ?336次閱讀

    LMK時(shí)鐘family LVDS輸出交流耦合設(shè)計(jì)注意事項(xiàng)

    電子發(fā)燒友網(wǎng)站提供《LMK時(shí)鐘family LVDS輸出交流耦合設(shè)計(jì)注意事項(xiàng).pdf》資料免費(fèi)下載
    發(fā)表于 09-27 09:42 ?1次下載
    LMK<b class='flag-5'>時(shí)鐘</b>family LVDS輸出交流耦合設(shè)計(jì)<b class='flag-5'>注意事項(xiàng)</b>

    調(diào)試SsitaraAM2x單片機(jī)注意事項(xiàng)

    電子發(fā)燒友網(wǎng)站提供《調(diào)試SsitaraAM2x單片機(jī)注意事項(xiàng).pdf》資料免費(fèi)下載
    發(fā)表于 09-11 14:13 ?0次下載
    調(diào)試SsitaraAM2x<b class='flag-5'>單片機(jī)</b><b class='flag-5'>注意事項(xiàng)</b>

    適用于智能門(mén)鎖的低功耗RTC實(shí)時(shí)時(shí)鐘模塊RX8010SJ

    RTC實(shí)時(shí)時(shí)鐘模塊:愛(ài)普生的RX8010SJ實(shí)時(shí)時(shí)鐘模塊憑借其超低功耗和高精度性能,成為智能門(mén)鎖應(yīng)用的理想選擇,為智能門(mén)鎖提供了穩(wěn)定可靠的時(shí)間源。智能門(mén)鎖走進(jìn)了越來(lái)
    的頭像 發(fā)表于 08-28 14:29 ?429次閱讀
    適用于智能門(mén)鎖的低功耗<b class='flag-5'>RTC</b><b class='flag-5'>實(shí)時(shí)時(shí)鐘</b>模塊RX8010SJ

    bq32000實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《bq32000實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 11:23 ?0次下載
    bq32000<b class='flag-5'>實(shí)時(shí)時(shí)鐘</b>(<b class='flag-5'>RTC</b>)數(shù)據(jù)表

    BQ32002實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《BQ32002實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 11:23 ?0次下載
    BQ32002<b class='flag-5'>實(shí)時(shí)時(shí)鐘</b>(<b class='flag-5'>RTC</b>)數(shù)據(jù)表

    bq3285E/L實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《bq3285E/L實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 11:22 ?0次下載
    bq3285E/L<b class='flag-5'>實(shí)時(shí)時(shí)鐘</b>(<b class='flag-5'>RTC</b>)數(shù)據(jù)表

    bq3285實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《bq3285實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 11:21 ?0次下載
    bq3285<b class='flag-5'>實(shí)時(shí)時(shí)鐘</b>(<b class='flag-5'>RTC</b>)數(shù)據(jù)表

    DP8573A實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《DP8573A實(shí)時(shí)時(shí)鐘(RTC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 10:11 ?0次下載
    DP8573A<b class='flag-5'>實(shí)時(shí)時(shí)鐘</b>(<b class='flag-5'>RTC</b>)數(shù)據(jù)表

    簡(jiǎn)述單片機(jī)定時(shí)器的工作原理

    單片機(jī)定時(shí)器的工作原理是一個(gè)復(fù)雜而精細(xì)的過(guò)程,它涉及到單片機(jī)內(nèi)部的多個(gè)組件和機(jī)制。
    的頭像 發(fā)表于 08-19 18:20 ?1581次閱讀

    RTC實(shí)時(shí)時(shí)鐘的基本概念和工作原理

    在現(xiàn)代電子設(shè)備,精確的時(shí)間管理和控制是至關(guān)重要的。為了實(shí)現(xiàn)這一功能,實(shí)時(shí)時(shí)鐘RTC, Real-Time Clock)模塊被廣泛應(yīng)用于各種設(shè)備和系統(tǒng)。
    的頭像 發(fā)表于 05-27 15:43 ?3884次閱讀

    STM8單片機(jī)設(shè)計(jì)時(shí)鐘注意什么?

    剛開(kāi)始學(xué)習(xí)STM8單片機(jī),想利用該系列單片機(jī)實(shí)踐設(shè)計(jì)一款LED數(shù)碼管時(shí)鐘。請(qǐng)求大家說(shuō)明一些注意事項(xiàng)(事先查閱了一些資料;方案確認(rèn)的元器件有6位數(shù)碼管和TM1620驅(qū)動(dòng)芯
    發(fā)表于 04-18 08:23

    8031單片機(jī)定時(shí)器和計(jì)數(shù)是怎么工作的

    8031單片機(jī)定時(shí)器和計(jì)數(shù)是通過(guò)內(nèi)部的時(shí)鐘源來(lái)工作的。具體來(lái)說(shuō),定時(shí)器/計(jì)數(shù)T0和T1的輸
    發(fā)表于 02-02 17:13 ?1316次閱讀

    單片機(jī)外部中斷和定時(shí)器中斷的區(qū)別和用法

    單片機(jī)外部中斷和定時(shí)器中斷在觸發(fā)來(lái)源、應(yīng)用場(chǎng)景以及功能特點(diǎn)上存在明顯差異** **。
    的頭像 發(fā)表于 01-28 17:35 ?3237次閱讀