介紹美國DALLAS公司推出的具有涓�(xì)電流充電能力的低功耗實(shí)�(shí)�(shí)鐘電路DS1302的結(jié)�(gòu)、工作原理及其在�(shí)�(shí)顯示�(shí)間中的應(yīng)�。它可以對年、月、日、周�、時(shí)、分、秒�(jìn)行計(jì)�(shí),且具有閏年�(bǔ)�?shù)榷喾N功能。給出DS1302在讀寫中的C51程序及流程圖,以及在�(diào)試過程中的注意事�(xiàng)�
�(xiàn)在流行的串行�(shí)鐘電路很�,如DS1302� DS1307、PCF8485�。這些電路的接口簡�、價(jià)格低廉、使用方�,被廣泛地采用。本文介紹的�(shí)�(shí)�(shí)鐘電路DS1302是DALLAS公司的一種具有涓�(xì)電流充電能力的電�,主要特�(diǎn)是采用串行數(shù)�(jù)傳輸,可為掉電保�(hù)電源提供可編程的充電功能,并且可以關(guān)閉充電功能。采用普�32.768kHz晶振�
DS1302 是美國DALLAS公司推出的一種高性能、低功�、帶RAM的實(shí)�(shí)�(shí)鐘電路,它可以對�、月、日、周�、時(shí)、分、秒�(jìn)行計(jì)�(shí),具有閏年補(bǔ)償功�,工作電壓為2.5V�5.5V。采用三線接口與CPU�(jìn)行同步通信,并可采用突�(fā)方式一次傳送多�(gè)字節(jié)的時(shí)鐘信�(hào)或RAM�(shù)�(jù)。DS1302�(nèi)部有一�(gè)31×8的用于臨�(shí)性存放數(shù)�(jù)的RAM寄存�。DS1302是DS1202的升�(jí)�(chǎn)品,與DS1202兼容,但增加了主電源/后備電源雙電源引�,同�(shí)提供了對后備電源�(jìn)行涓�(xì)電流充電的能��
引腳功能及結(jié)�(gòu)
在DS1302的引腳排�,其中Vcc1為后備電源,VCC2為主電源。在主電源關(guān)閉的情況下,也能保持�(shí)鐘的連續(xù)�(yùn)�。DS1302由Vcc1或Vcc2兩者中的較大者供�。當(dāng)Vcc2大于Vcc1+0.2V�(shí),Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1�(shí),DS1302由Vcc1供電。X1和X2是振蕩源,外�32.768kHz晶振。RST是復(fù)�/片選線,通過把RST輸入�(qū)�(dòng)置高電平來啟�(dòng)所有的�(shù)�(jù)傳�。RST輸入有兩種功能:首先,RST接通控制邏�,允許地址/命令序列送入移位寄存�;其�,RST提供終止單字節(jié)或多字節(jié)�(shù)�(jù)的傳送手�。當(dāng)RST為高電平�(shí),所有的�(shù)�(jù)傳送被初始�,允許對DS1302�(jìn)行操作。如果在傳送過程中RST置為低電�,則�(huì)終止此次�(shù)�(jù)傳�,I/O引腳�?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在Vcc�2.5V之前,RST必須保持低電�。只有在SCLK為低電平�(shí),才能將RST置為高電平。I/O為串行數(shù)�(jù)輸入輸出�(雙向),后面有詳細(xì)說明。SCLK始終是輸入端�
控制字節(jié)
DS1302 的控制字符表�??刂谱止?jié)的有效位(�7)必須是邏�1,如果它�0,則不能把數(shù)�(jù)寫入DS1302�,位6如果�0,則表示存取日歷�(shí)鐘數(shù)�(jù),為1表示存取RAM�(shù)�(jù);�5至位1指示操作單元的地址;有效�(�0)如為0表示要�(jìn)行寫操作,為1表示�(jìn)行讀操作,控制字節(jié)總是從位開始輸出�
輸入輸出
在控制指令字輸入后的下一�(gè)SCLK�(shí)鐘的上升沿時(shí),數(shù)�(jù)被寫入DS1302,數(shù)�(jù)輸入從低位即�0開始。同�,在緊跟8位的控制指令字后的下一�(gè)SCLK脈沖的下降沿讀出DS1302的數(shù)�(jù),讀出數(shù)�(jù)�(shí)從低�0位到高位7�
寄存�
DS1302�12�(gè)寄存�,其中有7�(gè)寄存器與日歷、時(shí)鐘相�(guān),存放的�(shù)�(jù)位為BCD碼形�,其日歷、時(shí)間寄存器及其控制字見�1�
此外,DS1302 還有年份寄存�、控制寄存器、充電寄存器、時(shí)鐘突�(fā)寄存器及與RAM相關(guān)的寄存器�。時(shí)鐘突�(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器�(nèi)�� DS1302與RAM相關(guān)的寄存器分為兩類:一類是單�(gè)RAM單元,共31�(gè),每�(gè)單元組態(tài)為一�(gè)8位的字節(jié),其命令控制字為C0H~FDH,其中奇�(shù)為讀操作,偶�(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM�31�(gè)字節(jié),命令控制字為FEH(�)、FFH(讀)�
CPU的連接
DS1302與CPU的連接需要三條線,即SCLK(7)、I/O(6)、RST(5)。圖3示出DS1302�89C2051的連接圖,其中,時(shí)鐘的顯示用LCD�
�(shí)際上,在�(diào)試程序時(shí)可以不加電容�,只加一�(gè)32.768kHz 的晶振即�。只是選擇晶振時(shí),不同的晶振,誤差也較大。另�,還可以在上面的電路中加入DS18B20,同�(shí)顯示�(shí)�(shí)溫度。只要占用CPU一�(gè)口線即可� LCD還可以換成LED,還可以使用北京�(wèi)信杰科技�(fā)展有限公司生�(chǎn)�10位多功能8段液晶顯示模塊LCM101,內(nèi)含看門�(WDT)/�(shí)鐘發(fā)生器及兩種頻率的蜂鳴器驅(qū)�(dòng)電路,并有內(nèi)置顯示RAM,可顯示任意字段筆劃,具�3�4線串行接�,可與任何單片機(jī)、IC接口。功耗低,顯示狀�(tài)�(shí)電流�2μA (典型�),省電模式時(shí)小于1μA,工作電壓為2.4V�3.3V,顯示清��
�(shí)�(shí)�(shí)間流�
�4示出DS1302的實(shí)�(shí)�(shí)間流�。根�(jù)此流程框�,不難采集實(shí)�(shí)�(shí)間。下面結(jié)合流程圖對DS1302的基本操作�(jìn)行編程:
根據(jù)本人在調(diào)試中遇到的問�,特作如下說明:
DS1302 與微處理器�(jìn)行數(shù)�(jù)交換�(shí),首先由微處理器向電路發(fā)送命令字節(jié),命令字節(jié)位MSB(D7)必須為邏�1,如果D7=0,則禁止寫DS1302,即寫保�(hù);D6=0,指定時(shí)鐘數(shù)�(jù),D6=1,指定RAM�(shù)�(jù);D5~D1指定輸入或輸出的特定寄存�;位LSB(D0)為邏�0,指定寫操作(輸入)� D0=1,指定讀操作(輸出)�
在DS1302的時(shí)鐘日歷或RAM�(jìn)行數(shù)�(jù)傳送時(shí),DS1302必須首先�(fā)送命令字節(jié)。若�(jìn)行單字節(jié)傳��8位命令字節(jié)傳送結(jié)束之后,在下2�(gè)SCLK周期的上升沿輸入�(shù)�(jù)字節(jié),或在下8�(gè)SCLK周期的下降沿輸出�(shù)�(jù)字節(jié)�
DS1302與RAM相關(guān)的寄存器分為兩類:一類是單�(gè)RAM單元,共31�(gè),每�(gè)單元組態(tài)為一�(gè)8位的字節(jié),其命令控制字為C0H~FDH,其中奇�(shù)為讀操作,偶�(shù)為寫操作;再一類為突發(fā)方式下的RAM寄存器,在此方式下可一次性讀、寫所有的RAM�31�(gè)字節(jié)�
要特別說明的是備用電源B1,可以用電池或者超�(jí)電容�(0.1F以上)。雖然DS1302在主電源掉電后的耗電很小,但�,如果要長時(shí)間保證時(shí)鐘正常,選用小型充電電池。可以用老式電腦主板上的3.6V充電電池。如果斷電時(shí)間較�(幾小�(shí)或幾�)�(shí),就可以用漏電較小的普通電解電容器代替�100 μF就可以保�1小時(shí)的正常走�(shí)。DS1302在次加電�,必須�(jìn)行初始化操作。初始化后就可以按正常方法調(diào)整時(shí)��
DS1302 存在�(shí)鐘精度不�,易受環(huán)境影響,出現(xiàn)�(shí)鐘混亂等缺點(diǎn)。DS1302可以用于�(shù)�(jù)記錄,特別是對某些具有特殊意義的�(shù)�(jù)�(diǎn)的記�,能�(shí)�(xiàn)�(shù)�(jù)與出�(xiàn)該數(shù)�(jù)的時(shí)間同�(shí)記錄。這種記錄對長�(shí)間的連續(xù)測控系統(tǒng)�(jié)果的分析及對異常�(shù)�(jù)出現(xiàn)的原因的查找具有重要意義。傳�(tǒng)的數(shù)�(jù)記錄方式是隔�(shí)采樣或定�(shí)采樣,沒有具體的�(shí)間記�,因此,只能記錄�(shù)�(jù)而無法準(zhǔn)確記錄其出現(xiàn)的時(shí)�;若采用單片�(jī)�(jì)�(shí),一方面需要采用計(jì)�(shù)�,占用硬件資源,另一方面需要設(shè)置中�、查詢等,同樣耗費(fèi)單片�(jī)的資源,而且,某些測控系�(tǒng)可能不允�。但是,如果在系�(tǒng)中采用時(shí)鐘芯片DS1302,則能很好地解決這�(gè)問題�
維庫電子�,電子知�(shí),一查百通!
已收錄詞�153979�(gè)