時間:2018-11-13 10:34:52來源:物聯網在線 作者:ioter
許多嵌入式應用需要知道時間,以便在特定的時間和日期,或針對時間戳事件,或同時依據兩者執(zhí)行特定的任務。執(zhí)行此功能的RTCC(實時時鐘和日歷)芯片問世已有數十年,但設計人員在縮減元件數目和基底面,同時最大限度減少功耗和設計時間方面一直面臨著挑戰(zhàn)。
集成式RTCC器件和創(chuàng)新式模塊如今可以應對這些挑戰(zhàn)。
本文將討論如何選擇RTCC芯片,并快速應用于嵌入式系統(tǒng)的設計中,同時最大限度減小空間,降低功耗。文中還會討論具有內置RTCC的MCU,以及將可用的RTCC模塊與表面貼裝RTC及其他元件一同使用,協助原型開發(fā)。
整合到模塊中的RTCC芯片通常由Arduino庫和RaspberryPiRaspbian驅動程序覆蓋層提供支持,利用它們可以更輕松地使用上述器件開展嵌入式實驗和原型開發(fā)。
RTCC的角色
許多嵌入式應用需要以極低的功耗跟蹤相對于真實世界的時間,同時減少在主處理器中所占用的空間,便與其處理其他任務。
然而,就其本身而言,RTCC芯片能力有限。它需要一個用于計時的精確晶體(可能為可實現極精確計時的溫度補償型晶體),還需要備用電池電源,以便在嵌入式系統(tǒng)斷電時仍能繼續(xù)跟蹤時間。這些輔助元件決定了RTCC執(zhí)行其兩項主要任務的能力:
在所有條件下持續(xù)記錄精確的時間和日期
在嵌入式系統(tǒng)的其余部分斷電后消耗極少的功率
部分微控制器采用RTCC
一些微控制器,例如MicrochipTechnology的32位PIC32MZ2064DAA288微控制器,采用了內部RTCC塊。將此類器件用于設計需要精確計時的系統(tǒng)似乎是個不錯的主意,尤其是,PIC32MZ2064DAA288微控制器在其用于為器件供電的正常電源引腳(VDDCORE和VDDIO)電壓不足時,會自動將內部電源切換至其電池輸入引腳(VBAT)。
但是,這類與RTCC以上所列兩項關鍵任務(即精確計時和低功耗運行)直接相關的器件,還存在一些其他挑戰(zhàn)。
首先,PIC32MZ2064DAA288微控制器的RTCC塊需要在其兩個次級振蕩器引腳上連接一個32768赫茲(Hz)晶體,以便在微控制器斷電時維持精確的時間。雖然可以使用微控制器的主時鐘振蕩器來運行RTCC塊,但當微控制器處于深度睡眠模式時,該振蕩器會停止運行。
片載RTCC采用了一個校準寄存器,Microchip也提供了一個校準程序,可在晶體振蕩器頻率偏移最多260ppm時將計時誤差減小至每個月0.66秒。但固定校準無法計入溫度波動,而這也會影響振蕩器的頻率,進而影響計時精度。
其次,除RTCC塊之外,微控制器在切換至電池電源后并未完全斷電。根據軟件控制,微控制器中的其他塊在電池運行期間可能啟用也可能未啟用。這樣帶來的挑戰(zhàn)是,電池的消耗和壽命變得高度依賴軟件。
這一挑戰(zhàn)并非PIC32MZ2064DAA288微控制器所獨有。任何采用RTCC塊的微控制器都會出現此問題。使用單獨的RTCC芯片可以克服該問題,將計時功能與微控制器明確隔離,而且,在微控制器不含內部RTCC時,這也是唯一的設計選擇。
RTCC芯片和模塊
數十年來,設計工程師一直使用單獨的RTCC芯片,在各種嵌入式和計算應用中計時。盡管現在有多家IC供應商提供此類芯片,但表面貼裝技術(SMT)讓RTCC芯片的評估變得非常復雜,因為這些器件無法輕松進行手動焊接或插入插座。
一種有效的解決方案是使用基于這些RTCC芯片的低成本模塊,消除與小型表面貼裝IC相關的原型開發(fā)挑戰(zhàn)。這些模塊還包含電池(通常為紐扣電池),以便在主系統(tǒng)斷電時保持電力。
Adafruit的255Chronodot(圖1)便是此類模塊一個很好的例子。此類模塊便于評估試驗板和原型開發(fā)中的RTCC芯片,許多情況下甚至適用于評估批量制造中的RTCC芯片。
圖1:Adafruit的255Chronodot在一個通孔式模塊中整合了RTCC芯片和電池。(圖片來源:Adafruit)
表1列出了基于兩家IC供應商的三款不同RTCC芯片的六個不同RTCC模塊。
表1:六個RTCC模塊詮釋了RTCC模塊的廣泛適用性和多樣性。(數據來源:Digi-KeyElectronics)
利用類似表1所列的六款RTCC模塊,可以輕松地在原型系統(tǒng)中增加計時功能。在開發(fā)整合了底層RTCC芯片的電路板時,如果仔細觀察這些模塊的設計方法,就能發(fā)現一些有用的信息。
表1中需要注意的第一點是,所有這些RTCC模塊都有一個共同點,即I2C接口。上世紀70年代的早期RTCC芯片使用并行地址和數據總線來模擬小型SRAM。在那個年代,并行微處理器總線非常普遍,而板載串行協議則尚未廣泛應用。
如今,芯片到芯片串行協議,尤其是I2C,已成為帶寬要求相對較低的外設的首選。RTCC芯片絕對符合條件,因為它只需要很少的字節(jié)便能傳輸日期和時間信息。
表1中顯示的前兩個RTCC模塊,即DFRobot的DFR0151和SparkFun的BOB-12708,均基于MaximIntegrated的8引腳器件DS1307RTCC芯片。由于它的普及程度,人們針對基于此芯片的模塊提供了各種Arduino庫和一個RaspberryPiRaspbian驅動程序覆蓋層。
DS1307RTCC具有單獨的電源軌和電池引腳,可在系統(tǒng)電源出現故障時,在嵌入式系統(tǒng)的電源軌與備用電池之間提供自動切換(圖2)。
圖2:MaximIntegrated的DS1307RTCC芯片在VCC引腳電壓降至約4.5V以下時,會自動從VCC切換至VBAT。(圖片來源:MaximIntegrated)
圖2還顯示了DS1307RTCC芯片與晶體之間的連接。對于RTCC芯片,此晶體幾乎總是便宜的32768Hz鐘表晶體,例如IQDFrequencyProducts的WATCH-2X6。此晶體引入了使用RTCC芯片開展設計時需要考慮的兩個新的方面。
第一個因素是晶體的溫度穩(wěn)定性。大多數RTCC使用最初為腕表而設計的“音叉”晶體。這些晶體會隨著溫度變化而偏離其額定頻率(圖3)。
圖3:32768Hz晶體的共振頻率隨溫度變化,這會影響RTCC的計時精度。(圖片來源:IQDFrequencyProducts)
IQDWATCH-2X6晶體的共振頻率隨溫度變化,這會改變振蕩器的頻率,導致計時誤差。請注意,振蕩器頻率發(fā)生20ppm的偏移對應每月大約1分鐘的計時誤差。
第二個因素被圖2中晶體與RTCC芯片之間過度簡化的連接所隱藏。RTCC芯片的晶體輸入引腳通常具有極高的阻抗,導致鐘表晶體的引線和PC板的印制線起到類似天線的作用。此“天線”可以將系統(tǒng)其余部分的高頻信號和噪聲耦合到RTCC的內部晶體振蕩器。
任何通過鐘表晶體與RTCC芯片之間的印制線耦合的噪聲,都可能導致RTCC芯片的振蕩器電路中出現額外轉換,進而導致時鐘運行加快。解決方案是采用細致的PC板布局。這包括將晶體置于盡可能接近RTCC芯片的振蕩器引腳的位置,以及在晶體輸入引腳和整個鐘表晶體主體的下面放置一個接地平面(圖4)。
圖4:接地平面上細致的PC板布局可預防有害的噪聲影響RTCC芯片的計時精度。(圖片來源:MaximIntegrated)
此外,圖4顯示的RTCC封裝下面用陰影線表示的禁布區(qū),可以防止間距很近的印制線將噪聲耦合到RTCC芯片的晶體輸入引腳。如果可能,在PC板的元件層上增加一個環(huán)繞晶體和RTCC芯片晶體輸入引腳的保護環(huán),也有助于防止噪聲對計時精度產生影響。
從PC板取下鐘表晶體并插入芯片中
為了規(guī)避外部晶體面臨的一些與PC板布局相關的挑戰(zhàn),可選擇采用STMicroelectronics提供的帶有內置晶體的M41T62RTCC。具有24引腳DIP基底面的STMicroelectronicsSTEVAL-FET001V1評估板上提供了此RTCC芯片。圖5顯示了此電路板的示意圖。其中有一個Arduino庫和一個RaspberryPiRaspbian驅動程序覆蓋層可供M41T62使用。
圖5:采用24引腳DIP封裝的STEVAL-FET001V1評估板上提供了STMicroelectronicsM41T62RTCC芯片(中央)。(圖片來源:STMicroelectronics)
如示意圖所示,M41T62只有一個VCC引腳。它沒有在主電源軌出現故障時可選擇切換的單獨VBAT引腳,因為該器件的尺寸僅為1.5x3.2毫米,專門用于可穿戴設備和數碼相機。在這些嵌入式應用中,電池往往是唯一的電源,而且空間非常寶貴。
請注意,也可以使用一個超級電容器作為M41T62的電源。在嵌入式系統(tǒng)中,系統(tǒng)電源或充電器可通過阻流二極管D1,連接到M41T62的VCC引腳(圖6)。
該二極管必須是與以上圖5中顯示的1N4148WS相似的低漏電類型,以防止超級電容器在系統(tǒng)的其余部分斷電時,通過系統(tǒng)電源反向放電。
圖6:可使用可充電超級電容器為M41T62RTCC芯片供電。(圖片來源:STMicroelectronics)
溫度補償可滿足晶體要求
表1中所列的三種RTCC模塊(Adafruit3013、Adafruit255Chronodot和MaximDS3231MPMB1#)均基于Maxim的DS3231RTCC芯片(圖7)。除集成式晶體之外,該器件還包括一個溫度傳感器,這也是該器件擁有較長正式名稱“超精準I2C集成式RTC/TCXO/晶體”的原因所在。
圖7:DS3231RTCC芯片集成了32768Hz鐘表晶體、一個溫度傳感器和一個開關式電容器陣列,以便將器件的計時精度保持在每年±2分鐘以內。(圖片來源:MaximIntegrated)
如方框圖中所示,DS3231的溫度補償型晶體振蕩器(TCXO)由內部晶體、一個溫度傳感器和一個開關式電容器陣列構成。與DS1307RTCC類似,DS3231也有單獨的主電源(VCC)和備用電池(VBAT)引腳。
與STMicroelectronicsM41T62RTCC芯片一樣,DS3231RTCC芯片消除了外部晶體存在的布局挑戰(zhàn)。它的TCXO減少了溫度擺動造成的計時精度波動。DS3231的內部TCXO能在極寬的工作溫度范圍(-40°C至+85°C),將器件的計時精度保持在每年正負2分鐘以內。
由于它的普及程度,人們針對基于DS3231RTCC芯片的模塊還提供了多個Arduino庫和一個RaspberryPiRaspbian驅動程序覆蓋層。
電池能持續(xù)使用多長時間?
電池需保養(yǎng)維護,無法永久續(xù)航。在將RTCC添加至嵌入式設計時,務必注意RTCC芯片所需的電池電流,以適當調整備用電池的大小。
RTCC應用中的電池壽命將取決于RTCC芯片在計時時的漏極電流、RTCC芯片所需的最低工作電壓,以及電池在其輸出電壓降至低于該最小工作電壓之前能夠供應所需電流的時間量(圖2)。
表2:RTCC芯片的電池供電電流額定值有助于調整合適的備用電池大小。(數據來源:Digi-KeyElectronics)
之前表1中顯示的RTCC模塊均已選定備用電池。一些模塊供應商在模塊的規(guī)格書上包含了電池壽命數字,此數字同樣顯示在表1中。鋰紐扣電池目前是這些模塊首選的電池類型。表中所列器件的電池直徑不外乎10、12和16毫米。當然,電池容量越大,增加的空間和重量往往也更多,但顯而易見的好處是,給定電流下的電池壽命更長。
總結
在選擇RTTC器件、選擇配套的晶體和電池以確保精準操作,以及為PC板布局時,都應格外小心。另一方面,基于RTCC芯片的可用模塊為試驗板和原型開發(fā)提供了捷徑,大幅縮短了開發(fā)時間。
標簽:
中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.connectcrack.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-05-19
2025-04-30
性能躍升20%!維宏NK300CX Plus數控系統(tǒng)...
2025-04-11
2025-04-08
2025-03-31
應用案例 | 使用宏集TELE監(jiān)控繼電器監(jiān)控...
2025-03-26