實時時鐘晶片應用設計時必須要考慮的事項

2021-01-05 電子產品世界

  總述

本文引用地址:http://www.eepw.com.cn/article/201706/360729.htm

  實時時鐘晶片(RTC)允許一個系統能同步或記錄事件,給用戶一個易理解的時間參考。由於RTC的應用越來越廣泛,為了避開設計時出現的問題,設計者應熟悉RTCs。

  選擇接口

  RTC可用的總線接口範圍很寬。串行接口包括2線(I2C),3線和串行外設接口(SPI)。並行接口包含多總線(多數據和地址線)和帶單獨地址及字節數據輸入的設計。接口的選擇通常由所用的處理器類型決定,很多處理器包括2線或SPI接口。其它的,如8051處理器及其派生的處理器支持多路地址和數據總線。時間保持非易失性(NV) RAM和SRAM用相同的控制信號,許多處理器都提供這種方便的接口,也包括各種不同的用電池組支持的RAM。最後,看不見的時鐘隱藏電池供電的RAM中並可用64位的軟體協議去訪問時鐘。

  備用電池的功能

  在有的應用中,例如VCRS,如果去掉電源, 會丟失時間和日期信息,。許多新的應用中,即使主電源去掉了, 要求時間和日期信息應保持有效。為了保持時鐘晶振運行,要用到一個主電源或者備用電源,或者一個大容量的電容。在這種情況下,時鐘晶片必須能夠在兩個電源之間進行切換。

  如果有一個電池,例如鈕扣型鋰電池用作備用電源,當在用備用電源工作時RTC應設計成儘可能少的消耗功耗。電源切換電路,一般情況下由主電源供電,會使電源切換到電池供電,並使RTC進入低功耗模式。微處理器和RTC之間的通信通常鎖定(稱為防寫),用來使電池供電電流最小和防止數據損壞。

  許多時鐘晶片都包括一個晶振控制位,通常稱之為時鐘中斷(CH)或是晶振使能位(/EOSC)。此位通常位於秒寄存器或控制寄存器的最高位(位7),幾乎在有這位的所有時鐘晶片中,初始電池上的首選狀態對於晶振來說是無效的。這允許系統設計者提出製造流程,在安裝和測試後,用Vbat進行供電,通常用個鋰電池。此時晶振處於一個停止狀態,保存電池到系統電壓可以工作。在這個點上,軟體/硬體應該啟動晶振並促使處理時間和日期。

  在一般情況下,鋰電池的工作溫度是-40℃到+85℃。電池不能暴露在+85℃以上的環境中。含電池和暴露電池的引腳的封裝,例如靈敏性插座,不應接觸到水。浸水使電池短路,因此耗盡電池。

  時鐘模塊,啟封和保存限期

  在備用電池模式下,時鐘的電流消耗主要來自晶振。所有帶有嵌入晶振和電池組的時鐘模塊在出廠時已經形成在裡面了並且晶振是不工作的。當晶振不工作時,電池的電流小於自放電電流,或處於室內溫度時每年的0.5%.

  一些時間保持非易失性(NV) RAM模塊用到時鐘控制IC和一個SRAM,它們從廠家出來時,晶振不工作且電池對SRAM的供電是不連續的。VCC第一次去掉後,電池就連接到SRAM上,這個功能常稱為「啟封」,用於保存電池直到模塊首次使用。其它時間保持非易失性(NV) RAM模塊是單片集成電路(在一塊IC中有控制器和SRAM),不需要啟封。

  模塊封裝

  時間保持非易失性(NV) RAM,多路總線時鐘,一些看門狗和隱形時鐘都可用於模塊或者電源帽封裝。模塊內部嵌入一個32.768Hz的晶振和一個鋰電池,使得設計PCB變得更容易。然而,晶振和電池不能容耐再次回流期間的溫度。在再次回流後,模塊可以用手附上或插到座子上。只要鋰電池不會暴露在85℃以上溫度,模塊也可以用波焊的方法焊到PCB上。

  電源帽產品採用兩片結構來提供一種能再次回流過程的表面焊接設備。用標準的回流技術可將含有RAM和時鐘的模塊底部安裝到電路板上。在焊接之後, 含有靈敏性電池和晶振的電源帽上部會突然折斷到底部。

  時鐘格式

  RTC用到了3種主要的數據格式,BCD格式,帶月,星期,年等單獨寄存器的二進位格式和無格式的二進位寄數器格式。

  BCD是最常用的一種格式。它流行的一個原因是時間和日期數據可以很方便的讀取,而不用轉換。每8位寄存器代表兩個數字(每個數字一個半位),每4位比特二進位表示數字0到9。圖1顯示出了一個典型二進位時鐘格式圖。

  因為有些位在特殊的時間或日期領域裡不需要,這些位可以用於特殊的功能,一般情況下是用作讀/寫位的,也可以用硬體讀返回而總是處於1或0狀態,這是由設計來決定的。在圖1中,秒寄存器的第7位是用作時鐘中斷位(CH)的。

  第二種是二進位形式,各個單獨的寄存器和BCD格式一樣。在帶BCD格式的時鐘上二進位格式通常是可以編程進行選擇的。

  第三種是在某種參考點的無格式二進位值中,用單個的多字節寄存器來表示秒時間。

  圖1.典型時間和日期寄存器圖

  時間和日期寄存器每秒更新一次。日期的變化值依據月和二月所處的年而不同。星期寄存器除多總線時鐘外,與其它寄存器無關。星期寄存器在午夜增加,並從7到1變化。只要在程序中的分配是連續的,程式設計師可以選定任何特殊的一天作為「1」。在總線復用時鐘中,星期天必須是「1」,因為星期寄存器用白天保存測試。在先前的午夜變化上,為白天保存的測試在午夜完成了,當測試白天保存功能時這必須說明。

  當時鐘格式由12小時格式成24小時格式,或從BCD格式變成二進位格式,或從二進位格式變成BCD格式,時間,日期,報警寄存器都必須重新進行初始化。

  無格式的二進位計數器時鐘有一個單獨的寄存器,代表性地是32位,每秒能增加一次。通常,寄存器值00H被認為是某些預設的時間或日期值。例如,格林尼治時間1970年1月1號00:00:00就是「0點」。寄存器中的二進位值就代表從那一點走過的時間。軟體程序必須把32位的二進位值變成可以讀寫的時間和日期,並且將用戶數據轉化成二進位值。

  Y2K Compliance

  FS半導體RTCs 與Y2K相適應,兼容Y2K,或者是不包括對日期敏感的邏輯。一個適應Y2K的時鐘有這些邏輯,包括世紀信息(有世紀數字或世紀位),能夠正確計算閏年直到2099年,但要求系統軟體對世紀進行跟蹤。二進位秒時鐘沒有對日期敏感的邏輯,軟體必須計算正確的日期,包括閏年的正確性。

  晶振和精確度

  晶振是一種最精確的可以用來提供固定頻率的電路。32768Hz的晶振用於大多數RTCs。通過劃分晶振的輸出頻率,一個1HZ的參考頻率可用於更新時間和日期。時鐘的精確度主要取於晶振的精確度。調諧晶振對溫度有一個拋物線響應(圖2)。23ppm的誤差大約為每月一分鐘。

  在特殊的容性負載下,晶振能調到正確的頻率處振蕩。在一個設計能提供6pF 電容負載的晶振的RTC中,用一個調到12.5pF的電容負載的晶振會導致RTC走得要快。

  圖2.晶振的精確度與溫度

    

  晶振的連接

  所有FS的RTCs的內部都有一個偏置網絡。晶振應直接連到X1和X2的引腳上,而沒其它任何元件(圖3)。晶振應儘可能近的接近X1和X2引腳。地平面應置於晶振,X1和X2下面(圖4)。數位訊號線應當遠離晶振和晶振的引腳,有嚴重輻射的RFI的元件應屏蔽起來且遠離晶振。低功耗的晶振電路對附近的RFI敏感,RFI會引起時鐘走時變快。

  圖3.RTC-等效電路顯示其內部的偏置網絡

    

 

  PC板上包括了可調晶振,例如那些帶RTCs,不能把超聲波排除在外。晶振可能由共振破壞。

  晶振起振時間

  晶振的起振時間在很大程度上依賴於晶振的特性和電路布局。高的串行等效電阻(ESR)和過大的電容負載是延長啟動時間的主要因素。用含有推薦的特性的晶振和依照推薦的電路布局的電路通常能在一秒內啟動晶振。

  電池連接

  大多數FS的RTCs都包括一個電池輸入引腳。電池是用來保持當主電源斷開後時鐘能夠正常走動。對於大多數設計來說,所用的電池都是鈕扣鋰電池。

  有的RTCs用電源電壓作為參考來決定什麼時候VCC是有效電平。當VCC低於最小值時,器件進入防寫,禁止外部訪問器件。當器件工作在VCC條件下時,VBAT輸入將處於高阻狀態。如果電池沒有連接到VBAT上,或是連接到串行二極體,VBAT的輸入處於高電平漂浮狀態,引起RTC進入防寫。在FS的大多數時鐘內部都提供反充電防寫,以消除外部二極體。

  讀/寫時間和日期

  由於在讀或寫的過程中可以進行內部寄存器更新而沒數據的破壞,大多數FS 的時鐘都提供能確保訪問時間和日期的方法。

  輔助緩衝寄存器(二級緩存)也用在串行時鐘上。當訪問(讀)RTC時,當前時間和日期傳送到輔助寄存器。一個脈衝讀信號將從輔助寄存器中讀數據,在內部寄存器連續更新時輔助寄存器的內容將保持不變。 下一次訪問(當晶片有效,復位或開始)將又一次傳送數據。當寄存器被寫時類似的過程發生,除非數據在訪問之前沒有被內部寄存器刷新。

  在時間保持非易失性(NV)RAM時鐘上,用TE位或R和W位封存用戶寄存器。

  有多總線時鐘裡。有幾種方法能確保時間和日期寄存器在訪問間不變。以下方法即是:

  設置位

  B寄存器的SET位設為1時,用戶雙緩存時間和日期寄存器被鎖存了。內部寄存器仍然正常的不斷更新。

  UIP 標誌

  進程中的更新標誌位(UIP)每秒將產生一個脈衝。當UIP位變為高電平後,更新將在244uS後發生。如果UIP位讀出的為低電平,為避免更新時的錯誤用戶至少有244uS的時間可以讀寄存器的數據。

  UF 中斷

  如果使能,那麼在每一次更新周期之後產生一次中斷,該周期表明999ms能讀有效時間和日期信息。

  默認的寄存器值

  如果數據手冊中沒有特殊說明,初始上電寄存器值不確定。也就是說,它們和DROM或SRAM是一樣:初始上電後,用於實際的數據是隨機的。

  發現並解決新設計中的問題

  不能和RTC通信

  在新的設計並解決問題的過程中,這裡有多種方法能夠幫助確定產生問題的原因。例如,如果顯現出來的是器件根本不通信,經常值得去確定該器件是否沒讀,寫或兩者都沒。如果器件有軟體使能的特點,例如方波輸出,嘗試著使那個特性有效是一個很好的方式去決定是否能夠寫器件。在2線器件上,示波器可以確定時鐘在傳送每個字節後是否發送應答信號。下面的段落描述了一些附加的設計中的問題並解決的提示」

  有備用電池的實時時鐘晶片用一個比較器在VCC和VBAT之間切換。有些實時時鐘晶片用電池電壓作為參考電壓,另外的用一個能帶參考電壓決定什麼時候VCC有效。當VCC下降到比較器的觸發點,就不能夠進行讀寫。在一個電壓下的禁止讀寫有助於對處理器進行不注意的寫,該處理器不再有有效的供應。而且,當VCC電壓高於觸發點,比較器把內部供電電源切換到VCC,防止電池耗盡。在電池電壓為參考的器件中,一個懸空電池輸入,在電池和VBAT之間有一個二極體的輸入,或有太高電壓的電池能制止和RTC的通信。確保VBAT在有效的電壓範圍內,並且在電池和電池輸入引腳之間沒有二極體。

  串行時鐘要求正確的向器件中寫人命令字節或從地址。不正確的命令/地址經常導致器件忽略讀操作。在那些情況下,數據I/O口終止於高阻態。在帶上拉電阻的串行線上,數據重複經常是0XFF。在3線接口中,如果I/O口有內部下拉電阻,數據經常是0。在其他的情況下,數據重複經常是命令字節最後一位的值。有些串行時鐘用分離的輸入作輸出,以便在一個較低供應電壓時允許處理器協調工作。沒接有效的供應到輸入端會阻止I/O口驅動高電平。最後,如果軟體不能使處理器的埠(接到了時鐘的輸入輸出引腳)從輸出(寫命令節)切換到輸入(讀數據),那麼輸出的數據可能是全0或全1。

  無效時間和數據值

  大多數時間和日期寄存器能夠接收任何值,包括無效值。如果無效值進入寄存器,那麼該值將不斷增加,直到和發生翻轉的位相匹配後比較,達到最小值。如果時鐘處於錯誤的模式。也可能造成無效值,例如,二進位碼取代BCD碼,或12小時製取代24小時制。

  數據丟失/數據破壞

  有兩種情況可以引起數據丟失:無意中的寫時鐘或反相小故障脈衝電壓用到IC上。因為CH或/EOSC位(帶晶振控制位的時鐘上)處於默認的停止狀態, 反相電壓輸入到IC所造成的數據丟失有時能辨認。另外,大多數而不是所有的寄存器中的數據會破壞。無意中的寫一般發生在電源周期時,但是通常只影響一個寄存器,而不影響串行時鐘。

  在上電和/或掉電時許多現代的開關電源將在VCC上產生一個-5V或-6V或甚至更大的毛刺。通過輸入保護二極體,這個負電壓耦合到內部時鐘電源。如果電源能夠提供比電池大的電流,那麼數據將丟失。在某種情況下,用一個肖特基二極體可以鉗位這個負毛刺電壓。另外一個時鐘上的負電壓源來自RS232連接器。如果帶時鐘晶片的PCB板掉電,上電的PC或其他器件通過RS232連接器連接到那塊板上,RS232收發器晶片可能將負電壓傳到不上電的PCB板上的其他晶片。

  無意中的寫也可能造成數據破壞。在防寫為有效前,在上電或掉電期間處理器能寫入錯誤的數據。在上電和掉電時,接口電路可能迫使輸入引腳進入寫狀態。在多總線時鐘的情況下,地址信號鎖存在ALE的下降沿。如果/WE和/CS在器件處於防寫之前變為低電壓,那麼在最後寄存器中最後訪問的數據會破壞。VCC的上升時間和下降時間應核對無誤以用於數據手冊的需要。

  不正確的中斷程序處理造成間斷的數據問題。在某些情況下,時間和數據信息複製到RAM中去了,並且複製不是同步的。最後,在電路仿真(IEC)硬體配置不當,可以造成奇怪的行為。

  晶振問題

  時間不能增加的最普遍原因是晶振沒使能。許多FS時鐘晶片有一個在晶振工作前須置1的控制位(通常位於第二個寄存器)。

  為延長電池使用時間,振蕩電路設計成低功耗。晶振的連接問題能降低閉環增益,阻止晶振工作。接到晶振的外部電容也減少閉環增益,增加啟振時間或阻止振動。示波器的探頭也能夠阻止振動。帶45K以上的等效串行電阻(ESR)的 晶振也將減少閉環增益。最後,留在電路板上的焊錫清潔劑可能阻止晶振起振。

相關焦點

  • 輕鬆吃透實時時鐘晶片DS1302軟硬體設計
    今天我們來討論一款老掉牙的實時時鐘晶片DS1302。什麼是實時時鐘(RealTime Clock, RTC)呢?為什麼我們需要它呢?假設你使用單片機實現萬年曆應用,一般的做法是這樣的:設置中斷後判斷1秒是否到來,如果到來就將秒數加1,然後再考慮一些進位處理,例如,每60秒則分鐘加1,每60分則小時加1, 24小時或12小時制也要區分對待,每12個月則年加1,還要考慮閏月閏年。雖然考慮的事情好像有些多,但是在資訊非常發達的今天,從網絡上搜索出現成的代碼也絕不是難事。
  • 實時時鐘晶片技術淺談
    什麼是實時時鐘晶片,它都包含哪些功能,時鐘晶片選型需要重點關注的指標有哪些?本文將為您做出基本的敘述。
  • 實時時鐘晶片DS1302
    DS1302是一種三線制的串行時鐘晶片,即CE(片選),SCLK(時鐘),I/O(雙向數據)。需要注意的地方:1.在上電時,RST 必須為邏輯0直至Vcc>2.0V。同時SCLK 在RST 驅動至邏輯1 狀態時必須為邏輯0。
  • 實時時鐘電路圖設計
    實時時鐘功能是通過使用實時時鐘晶片PCF8563實現的。PCF8563是PHILIPS公司推出的款帶12C總線,具有極低功耗的多功能時鐘/日曆晶片。
  • 一文看懂rtc實時時鐘和單片機時鐘的區別
    一臺能夠工作的計算機要有這樣幾個部份構成:CPU(進行運算、控制)、RAM(數據存儲)、ROM(程序存儲)、輸入/輸出設備(例如:串行口、並行輸出口等)。在個人計算機上這些部份被分成若干塊晶片,安裝一個稱之為主板的印刷線路板上。
  • Maxim的幾款實時時鐘(RTC)晶片
    本文介紹了Maxim的幾款實時時鐘(RTC)晶片,列出了DS3231、DS3232、DS3234、DS32B35和DS32C35之間的性能差異,以幫助用戶找到最合適的解決方案。
  • 串行實時時鐘晶片DS1302程序設計中的問題與對策
    美國Dallas公司推出的串行接口實時時鐘晶片DSl302可對時鐘晶片備份電池進行涓流充電。由於該晶片具有體積小、功耗低、接口容易、佔用CPUI/O口線少等主要特點,故該晶片可作為實時時鐘廣泛應用於智能化儀器儀表中。
  • 基於DS3231的高精度時鐘接口設計
    摘要:為避免電路系統在上電或斷電後出現計時不準確的異常狀況,提出採用高精度時鐘晶片DS3231的解決方案。介紹DS3231的特點、工作原理以及引腳功能,設計其與微控制器進行通信時的軟體、硬體接口,並給出相應的原理圖與流程圖,此方案對DS3231在一般的電路系統設計中具有通用性。由於DS3231是目前精度最高,併集成有溫補振蕩器和晶體的實時時鐘晶片,因此該方案對那些對計時精度要求極高的應用具有一定的借鑑意義。
  • 超級電容(法拉電容)和實時時鐘
    打開APP 超級電容(法拉電容)和實時時鐘 發表於 2020-04-30 11:34:55 涓流充電時鐘晶片是一個可編程3線串行接口時鐘晶片,可用超級電容或可充電電池備份系統的時間和日期,還提供31位元組的非易失SRAM用於數據存儲。由DS1302和超級電容構成的電源備份電路,DS1302的VCC2接主電源,VCC1接超級電容正極。
  • 多功能智能時鐘的設計
    1.2 時鐘晶片  時鐘晶片採用了DS3231,該晶片是低成本、高精度I2C實時時鐘  血氧傳感器採用Maxim公司的MAX30102[4],是一種專為可穿戴設備設計開發的血氧飽和度和心率監測傳感器,它是集光源、接收和濾波及數位化為一體。晶片功耗極低,採用了1.8 V內核供電,採用I2C標準通信,可用軟體關斷晶片,待機電流低至0.7 μA。
  • 飛凌乾貨丨OK-xx18 Android實時時鐘框架介紹
    整體流程介紹由於實時時鐘子系統,硬體抽象層、框架層、應用層、谷歌的android開發包都已經做好,因此此接口的主要設計工作在於rx8010晶片的驅動的實現,包括晶片的初始化及配置時間,讀取時間及接入實時時鐘子系統等功能。板子上電以後,內核驅動會初始化rtc晶片rx8010,並生成/dev/rtc0設備文件,註冊其設置時間等操作函數。
  • 選擇物聯網平臺時要考慮的事項
    考慮固件更新、修補、報告和提醒用戶任何與設備相關的更改。雲平臺。雲平臺用於為組織提供構建物聯網系統所需的基礎設施。從本質上講,雲平臺提供了一個集中的中心來管理您的數據和後端流程。應用程式支持平臺。應用程式支持平臺被設計成一個一體式解決方案,提供物聯網系統啟動和運行所需的全套工具。
  • 一種採用無線遙控修改時鐘數據的LED時鐘顯示屏設計
    LED時鐘屏控制系統  控制系統由J06A遙控接收模塊、單片機AT89S52、實時時鐘晶片DS2321、EEPROM、LED驅動電路等構成。    遙控接收部分  遙控接收部分如圖4所示,接收模塊採用與F06A配套使用的J06A,該模的工作電壓為2.6~3.6V,接收靈敏度為5μV,其上有8個地址編端,使用時其連接必須與發射模塊的地址編碼一致。
  • 半導體行業中十款主流實時時鐘
    這次咱們一起討論實時時鐘IC,應用也是相當廣泛的,滲透到時鐘、手錶、手機、電腦等等。往往溫度是影響時鐘的主要因素,因為溫度會影響晶振的頻率,這點也是工程師們所不可忽視的因素,從而帶來內置晶體、電池、電容來減少溫度的影響。本文引用地址:http://www.eepw.com.cn/article/258300.htmNext!
  • 應用Protel99se設計電子時鐘印製板電路
    所以設計一個符合工藝要求,滿足產品正常工作性能的線路板非常重要。本文引用地址:http://www.eepw.com.cn/article/189750.htm本文結合作者多年從事電子專業課程教學與研究工作的經驗,結合單片機開發以及線路板設計,將具體闡述應用Protel99se軟體開發單片機典型產品電子時鐘線路板的設計重要步驟以及注意事項。
  • 32位RISC CPU ARM晶片的應用和選型
    自V5以且,ARM公司提供Piccolo DSP的芯核給晶片設計得,用於設計ARMDSP的SOC(System On Chip)結構晶片。此外,ARM晶片還獲得了許多實時作業系統(Real Time Operating System)供應商的支持,比較知名的有:Windows CE、Linux、pSOS、VxWorks、Nucleus、EPOC、uCOS、BeOS等。
  • 高精度時鐘晶片有哪些?(四款高精度時鐘晶片介紹)
    時鐘晶片,顧名思義,其就是一種具有時鐘特性,能夠現實時間的晶片。時鐘晶片屬於是集成電路的一種,其主要有可充電鋰電池、充電電路以及晶體振蕩電路等部分組成,目前,被廣泛的應用在各類電子產品和信息通信產品中。
  • 從EMC角度考慮常用電路設計及PCB設計
    Y電容時,需斟酌,如有螺釘可使Y電容就近接地時,可考慮增加,否則不用。 3 電源轉換晶片的EMC設計 應遵循電源轉換晶片輸入輸出端應並聯BULK電容和去耦電容;電容容值應依據晶片手冊推薦,或者依據驅動能力來估算;開關轉換晶片輸出應考慮磁珠進行濾波。
  • 時鐘晶片接口分析與DS1302典型原理電路圖
    每個程序的運行都需要頻率這個東西來恆量,所以我們就會需要用到時鐘晶片,它才會產生時鐘頻率。時鐘晶片是日常生活中應用最為廣泛的消費類電子產品之一。它為人們提供精確的實時時間,可以對年、月、日、周日、時、分、秒進行計時,且具有閏年補償等多種功能;或者為電子系統提供精確的時間基準,目前實時時鐘晶片大多採用精度較高的晶體振蕩器作為時鐘源。
  • PCI總線接口設計及專用接口晶片的應用
    在保證精度的條件下,應用儘可能高的採樣速度,以滿足對信號的實時採集和實時處理;而要實現高速數據採集,不僅需要高性能的adc等設備,而且需要高速的數據傳輸。目前isa總線己經逐 漸退出了歷史舞臺,開發基於pci總線的數據採集卡己經是勢在必行。2 pci總線接口概述pci總線的信號線包括32根地址數據復用線、仲裁、接口控制線、總線命令字節允許復用線和系統復位等。