現在流行的串行時鐘芯片很多,如DS1302、DS1307、PCF8485等。這些芯片接口簡單、價格低廉、使用方便,被廣泛地采用,但這些芯片都存在時鐘精度不高,易受環境影響,出現時鐘混亂等缺點。本文介紹一種EPSON公司最新推出的RTC-4553時鐘芯片。該芯片采用內置晶振和獨特的數據方法,大大提高了時鐘精度和可靠性。RTC-4553配有串行通信接口,另有30%26;#215;4bit SRAM,有2000~2099的百年日歷,采用14腳SOP封裝,電池耗電2μA,時鐘誤差<3 min/年且無需調整,是儀器儀表高精度時鐘的理想芯片。 1 內部結構及引腳 串行時鐘芯片的內部結構如圖1所示。它包含I/O控制器、移位寄存器、命令及邏輯控制器,表態RAM、實時時鐘、計數器、晶振等部分。 圖2為RTC-4553的引腳圖。CS0為片選腳,低電平選中;WR為讀寫使能口,高為讀,低為寫;L1~L5為工廠出廠調整精度和測試用,使用中懸空; CS1為芯片掉電檢查口,可直接與系統電源連接,芯片測到該口為低時,自動進入低功耗狀態;SCK為時鐘口,SIN為數據輸入口,SOUT為數據輸出口。另外,芯片還有1個時鐘信號輸出口TPOUT,該口可輸出1024Hz或1/10Hz的信號,以供檢測芯片的時鐘精度所用。 2 功能及控制 2.1 寄存器 RTC-4553共有46%26;#215;4bit寄存器。這些寄存器分3頁,第1頁共16個,分別為時鐘寄存器和控制寄存器,如表1所列,用來存放秒、分、時、日、月、年、星期和3個特殊寄存器;第2頁、第3頁各有15個,共30個SRAM寄存器,頁面的選擇通過操作控制寄存器3的MS1、MS0位來實現。 2.2 數據讀出 在片選擇中芯片,WR置高時,芯片處于讀出狀態,隨著SCK腳上的時鐘變化,內部寄存器的數據將出現在SOUT腳上。輸入需要8個時鐘,4個用來輸入地址;輸出數據也需要8個時鐘,包括4個地址位4個數據位。數據在SCK上升沿輸入,在下降沿輸出。寄存器的地址由SIN腳輸入,頁面由MS0、MS1決定。圖3為讀時序圖。 2.3 數據寫入 RTC-4553采用特殊的寫指令,對第0頁的0D~0FH及第1頁、第2頁的寄存器的操作采用常規寫法,地址后面的數據將原樣寫入寄存器中,而對時間寄存器寫操作指令只能將內部的內容加1,并自動完成轉換。圖4為時間寄存器寫時序。芯片這種獨特的設計,防止了時鐘區數據被意外干擾出現非法數據的可能,這正是該芯片高可靠性的原因所在。 3 應用 RTC-4553采用串行通信,與單片機接口簡單,在設計中RAM區可放置少量的停電后系統需要保存的數據。CS1也可與單片機的掉電檢測口相連,以便能迅速進入低功耗狀態。圖5以PIC單片機為例,給出連接圖。 按圖5給出單字節的讀程序: 入口:FDE的低4位存放讀地址,W的低4位存放讀地址 BSF RA,WR ;讀狀態 BCF RA,CS0 ;選芯片 MOVLW 8 MOVWF Count ;準備發8位 LOOP:BCF RA,SCK ;SCK低電平 BCF RA,SIN BTFSS FDE,0 ;FDE的0位為1 ;則SIN口為1 GOTO LLL ;否則SIN口輸出0 BSF RA,SIN LLL: RRF FDE,1 ;FDE右移,準備發下一位 BSF RA,SCK ;SCK高電平 DECFS2 Count GOTO LOOP ;讀指令發完 MOVLW 8 ;準備接收數據 MOVWF Count LOOP1: BCF RA,SCK NOP BSF RA,SCK RRF W,0 BCF W,0 BTFSS RA,Sout ;讀判斷 GOTO LLL1 BSF W,0 LLL1: DECFS2 Count GOTO LOOP1 BCF RA,CS0 ;結束,關芯片 |