4.2 DS1302時鐘電路
4.2.1 DS1302芯片介紹
低功耗時鐘芯片DS1302可以對年、月、日、時、分、秒進行計時,且具有閏年補償等多種功能。DS1302用于數據記錄,特別是對某些具有特殊意義的數據點的記錄上,能實現數據與出現該數據的時間同時記錄。這種記錄對長時間的連續測控系統結果的分析以及對異常數據出現的原因的查找有重要意義。
采用DS1302作為記錄測控系統中的數據記錄,其軟硬件設計簡單,時間記錄準確,既避免了連續記錄的大工作量,又避免了定時記錄的盲目性,給連續長時間的測量、控制系統的正常運行及檢查都來了很大的方便,可廣泛應用于長時間連續的測控系統中。在測量控制系統中,特別是長時間無人職守的測控系統中,經常需要記錄某些具有特殊意義的數據及其出現的時間。記錄及分析這些特殊意義的數據,對測控系統的性能分析及正常運行具有重要的意義。傳統的數據記錄方式是隔時采樣或定時采樣,沒有具體的時間記錄,因此只能記錄數據而無法準確記錄其出現的時間;若采用單片機計時,一方面需要采用計數器,占用硬件資源,另一方面需要設置中斷、查詢等,同樣耗費單片機的資源,而且某些測控系統可能不允許。而在系統中采用DS1302則能很好地解決這個問題。
(1) DS1302的性能特性
·實時時鐘,可對秒、分、時、日、周、月以及帶閏年補償的年進行計數;
·用于高速數據暫存的31×8位RAM;
·最少引腳的串行I/O;
·2.5~5.5V 電壓工作范圍;
·2.5V時耗電小于300nA;
·用于時鐘或RAM數據讀/寫的單字節或多字節(脈沖方式)數據傳送方式;
·簡單的3線接口;
·可選的慢速充電(至VCC1)的能力。
DS1302時鐘芯片包括實時時鐘/日歷和31字節的靜態RAM。它經過一個簡單的串行接口與微處理器通信。實時時鐘/日歷提供秒、分、時、日、周、月和年等信息。對于小于31天的月和月末的日期自動進行調整,還包括閏年校正的功能。時鐘的運行可以采用24h或帶AM(上午)/PM(下午)的12h格式。采用三線接口與CPU進行同步通信,并可采用突發方式一次傳送多個字節的時鐘信號或RAM數據。DS1302有主電源/后備電源雙電源引腳:VCC1 在單電源與電池供電的系統中提供低電源,并提供低功率的電池備份;VCC2在雙電源系統中提供主電源,在這種運用方式中,VCC1 連接到備份電源,以便在沒有主電源的情況下能保存時間信息以及數據。DS1302由VCC1或VCC2中較大者供電。當VCC2大于VCC1+0.2V時,VCC2給DS1302供電;當VCC2小于VCC1時,DS1302由VCC1供電。
(2) DS1302數據操作原理
DS1302在任何數據傳送時必須先初始化,把RST腳置為高電平,然后把8位地址和命令字裝入移位寄存器,數據在SCLK的上升沿被輸入。無論是讀周期還是寫周期,開始8位指定40個寄存器中哪個被訪問到。在開始8個時鐘周期,把命令字節裝入移位寄存器之后,另外的時鐘周期在讀操作時輸出數據,在寫操作時寫入數據。時鐘脈沖的個數在單字節方式下為8加8,在多字節方式下為8加字節數,最大可達248字節數
( 圖4-3 DS1302管腳圖 )
如果在傳送過程中置RST為低電平,則會終止本次數據傳送,并且I/O引腳變為高阻態。上電運行時,在VCC >=2.5V之前,RST腳必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。DS1302的管腳圖如圖4-3所示,內部結構圖如圖4-4所示,表4-2為各引腳的功能。
(圖4-4 DS1302內部結構圖)
(表4-2 DS1302引腳功能表)
DS1302的控制字如圖4-5所示。控制字節的最高有效位(位7)必須是邏輯1;如果它為邏輯0,則不能把數據寫入到DS1302中。位6如果為0,則表示存取日歷時鐘數據;為1表示存取RAM數據。位5~1(A4~A0)指示操作單元的地址。最低有效位(位0)如為0,表示要進行寫操作;為1表示進行讀操作。控制字節總是從最低位開始輸入/輸出。
(圖4-5 控制字節的含義)
為了提高對32個地址的尋址能力(地址/命令位1~5=邏輯1),可以把時鐘/日歷或RAM寄存器規定為多字節(burst)方式。位6規定時鐘或RAM,而位0規定讀或寫。在時鐘/日歷寄存器中的地址9~31或RAM寄存器中的地址31不能存儲數據。在多字節方式中,讀或寫從地址0的位0開始。必須按數據傳送的次序寫最先的8個寄存器。但是,當以多字節方式寫RAM時,為了傳送數據不必寫所有31字節。不管是否寫了全部31字節,所寫的每一字節都將傳送至RAM。數據讀寫程序如圖4-6所示。
(圖4-6 數據讀寫程序)
DS1302共有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放的數據位為BCD碼形式,其日歷、時間寄存器及其控制字見表4-3,其中奇數為讀操作,偶數為寫操作。
(表4-3 DS1302的日歷、時鐘寄存器及其控制字)
時鐘暫停:秒寄存器的位7定義位時鐘暫停位。當它為1時,DS1302停止振蕩,進入低功耗的備份方式。通常在對DS1302進行寫操作時(如進入時鐘調整程序),停止振蕩。當它為0時,時鐘將開始啟動。
AM-PM/12-24[小]時方式:[小]時寄存器的位7定義為12或24[小]時方式選擇位。它為高電平時,選擇12[小]時方式。在此方式下,位5是AM/PM位,此位是高電平時表示PM,低電平表示AM,在24[小]時方式下,位5為第二個10[小]時位(20~23h)。
4.2.2 DS1302 的應用
實時時鐘芯片DS1302采用串行數據傳輸,可為掉電保護電源提供可編程的充電功能,也可以關閉充電功能,芯片采用32.768kHz晶振。要特別說明的是,備用電源BT1可以用電池或超級電容(10萬μF以上)。雖然DS1302在主電源掉電后耗電很小,但如果要長時間保證時鐘正常,最好選用小型充電電池。如果斷電時間較短(幾小時或幾天),可以用漏電較小的普通電解電容代替(100μF就可以保證1小時的正常走時)。DS1302在第一次加電后,需進行初始化操作。初始化后就可以按正常方法調整時間及鬧鈴。DS1302的時鐘電路如圖4-7所示。
(圖4-7 DS1302時鐘電路)
-
寄存器
+關注
關注
31文章
5402瀏覽量
122929 -
時鐘芯片
+關注
關注
2文章
259瀏覽量
40476 -
DS1302
+關注
關注
8文章
451瀏覽量
51393 -
時鐘電路
+關注
關注
10文章
243瀏覽量
51185 -
電子萬年歷
+關注
關注
3文章
38瀏覽量
16162
發布評論請先 登錄
評論