關(guān)鍵詞:PCF8563 I2C 倒計時系統(tǒng)
引言
倒計時系統(tǒng)的任務(wù),就是對某一設(shè)定日期進行倒數(shù),在顯示屏顯示當(dāng)前距離設(shè)定日期的時間;廣泛應(yīng)用于重大的節(jié)日或活動,以增強人們的關(guān)切程度和緊迫感。戶外型倒計時系統(tǒng),首先要求在強日光下顯示屏的字符依然清晰可見,而且要求系統(tǒng)能夠長時間連續(xù)穩(wěn)定地工作。本文介紹的系統(tǒng)正是針對這樣的要求而開發(fā)出來的。
1 總體設(shè)計方案
整個系統(tǒng)由時鐘芯片、中央處理單元、譯碼、驅(qū)動、顯示、鍵盤幾部分構(gòu)成,系統(tǒng)框圖如圖1所示。
2 硬件電路設(shè)計
2.1 時鐘芯片
PCF8563是Philips公司推出的一款帶I2C總線具有極低功耗的多功能時鐘/日歷芯片,具有四種報警功能和定時功能;內(nèi)部時鐘電路、內(nèi)部振蕩電路、內(nèi)部低電壓檢測以兩線制I2C總線通信方式,不但使用外圍電路簡潔,而且增加了芯片的可靠性。
PCF8563的SCL為時鐘輸入端,數(shù)據(jù)隨時鐘信號同步輸入器件或從器件輸出;SDA為雙向引腳,用于串行數(shù)據(jù)的輸入輸出;INT是中斷信號輸出端,可通過設(shè)置報警寄存器按指定時間在該腳產(chǎn)生報警信號,低電平有效;SDA、SCL、INT均為漏極開路,必須上拉電阻;X1、X2分別為反相放大器的輸入、輸出端;可在X1端接入32.768kHz的石英晶振,配置成片內(nèi)振蕩器。本系統(tǒng)PCF8563與89C51接口采用圖2所示接口方案。
圖2中,在X1、X2端接入32.768kHz的石英晶振,將時鐘源配置為片內(nèi)振蕩器。VDD與地之間國入1個1μF的大電容供電維持時鐘芯片,鋰電池(3.6V)同時開始工作,給時鐘芯片供電,使時鐘芯片工作不受影響。PCF8563與89C51接口采用3根口線,PCF8563的INT腳產(chǎn)生周期為1s的脈沖中斷信號給89C51的INT0引腳,89C51產(chǎn)生中斷后,通過I2C總線讀取PCF8563的基準(zhǔn)時間。
2.2 顯示和鍵盤電路
譯碼、顯示、驅(qū)動、鍵盤電路如圖3所示、單片機將讀入的PCF8563時間信息,經(jīng)過程序處理,輸出顯示信號到P1口(數(shù)據(jù)4位,選擇信號4位)。顯示信息包括倒計時信息(當(dāng)前距離設(shè)定時間的天數(shù))和當(dāng)前時間的星期、時、分、秒信息。4位數(shù)據(jù)信號送入MC14513(BCD-鎖存/7段譯/碼驅(qū)動器),共有10個MC14513:倒計時占用3個,時間時、分、秒各占用2個,星期占用1個。4位選擇信號送到74LS145譯碼器(4位鎖存/4-10線譯碼),選擇接收數(shù)據(jù)的MC14513芯片。 被選擇的MC14513譯碼驅(qū)動對應(yīng)共陰數(shù)碼管字段(a、b、c、d、e、f、g)。
戶外顯示要求在強日光下依然清楚可見,所以我們采用超高度φ5 LED管組成LED點陣字符。其中每個字段由4塊LED點陣埠并聯(lián)組成,而每個LED點陣塊先由5個LED串聯(lián)1組,再將4個串聯(lián)組并聯(lián)而成。先用的超高亮度LED工作電流約為20mA,工作電壓約為2V,每字段的總電流約為320mA,工作電壓為10V;字段的驅(qū)動,采用大電流反相驅(qū)動器ULN2003(由7組NPN達林頓驅(qū)動器組成);倒計時信號經(jīng)MC14153輸入到ULN2003,ULN2003輸出接字段的陰極,字段陽極接電源正極;電源采用10A、5V的兩個開關(guān)電源串聯(lián)供電。
鍵盤接口有4個鏈:1個設(shè)定/確認鍵、1個修改+1鍵、1個修改-1鍵、1個移位鍵。對應(yīng)秒、分、時、倒計時、星期,有5個LED。LED亮,表示對應(yīng)的秒或分或星期或倒計時數(shù)據(jù)可按修改鍵修改。設(shè)定/確認鍵,有兩種狀態(tài):設(shè)定和確認。首先按下為設(shè)定時間狀態(tài),再按下為確認狀態(tài)。將設(shè)定時間數(shù)據(jù)處理后寫入PCF8563,兩種狀態(tài)互為循環(huán)。在設(shè)定時間狀態(tài),首先次移位為秒位,對應(yīng)秒移位LED亮,按下移位鍵,移位LED燈接秒→分→時→倒計時→星期逐次循環(huán);按下修改+1鍵或修改-1鍵可對相應(yīng)位的數(shù)據(jù)進行+1或-1操作。
3 軟件設(shè)計
PCF8563中共有16個寄存器,其中00~01H為控制寄存器,09~0CH為報警寄存器,0DH為時鐘輸出寄存器,0E~0FH為定時器功能寄存器,02~08H為秒~年時間寄存器。表1、表2列出了各寄存器概況及對應(yīng)的內(nèi)存地址和功能。
表1 寄存器概況
地 址 | 寄存器名稱 | 位7 | 位6 | 位5 | 位4 | 位3 | 位2 | 位1 | 位0 |
00H | 控制/狀態(tài)寄存器1 | TFST | 0 | STOP | 0 | TESTC | 0 | 0 | 0 |
01H | 控制/狀態(tài)寄存器2 | 0 | 0 | 0 | TT/TP | AF | TF | AIE | TIE |
0DH | CLKOU 輸出寄存器 | FE | - | - | - | - | - | FD1 | FD0 |
0EH | 定時器控制寄存器 | TE | - | - | - | - | - | TD1 | TD0 |
0FH | 定時器倒計數(shù)數(shù)值寄存器 | 定時器倒計數(shù)數(shù)值(二制) |
表2 BCD格式寄存器概況
地址 | 寄存器名稱 | 位7 | 位6 | 位5 | 位4 | 位3 | 位2 | 位1 | 位0 |
02h | 秒 | VL | 00~59BCD碼格式數(shù) | ||||||
03h | 分 | - | 00~59BCD碼格式數(shù) | ||||||
04h | 時 | - | - | 00~23BCD碼格式數(shù) | |||||
05h | 日 | - | - | 00~59BCD碼格式數(shù) | |||||
06h | 星期 | - | - | - | - | - | 0~6 | ||
07h | 月/世紀(jì) | C | - | - | 01~12BCD碼格式數(shù) | ||||
08h | 年 | 00~99BCD碼格式數(shù) | |||||||
09h | 分鐘報警 | AE | 00~59BCD碼格式數(shù) | ||||||
0Ah | 小時報警 | AE | - | 00~23BCD碼格式數(shù) | |||||
0BH | 日報警 | AE | - | 01~31BCD碼格式數(shù) | |||||
0CH | 星期報警 | AE | - | - | - | - | 0~6 |
按I2C總線規(guī)約,PCF8563的從地址:讀地址SLAR為A3H、寫地址SLAW為A2H,PCF8563I2C通信實現(xiàn)有字節(jié)寫/讀兩種狀態(tài)。適用80C51的虛擬I2C總線軟件包。本系統(tǒng)直接調(diào)用該I2C總線軟件包的數(shù)據(jù)讀寫子程序(其中WRNBYT為N字節(jié)的子程序,RDNBYT為讀取N字節(jié)的字節(jié)),來實現(xiàn)PCF8563的I2C總線操作。
根據(jù)硬件電路及資源分配,將I2C軟件包中符號單元賦值如下:
SDA EQA P0.0 ;數(shù)據(jù)傳送
SCL EQU P0.1 ;時鐘控制狀態(tài)
MIN DATA 30H ;秒寄存器
SEC DATA 31H ;分寄存器
HOUR DATA 32H ;時寄存器
DAY DATA 33H ;日寄存器
WEEK DATA 34H ;周寄存器
MONTH DATA 35H ;月寄存器
YEAR DATA 36H ;年寄存器
SLA DATA 37H ;37H為被控器的地址
NUMBYT DATA 38H ;38H為數(shù)據(jù)字節(jié)計數(shù)器
MRT DATA 40H ;接收數(shù)據(jù)緩沖區(qū)首地址
MTD DATA 50H ;發(fā)送數(shù)據(jù)緩沖區(qū)首地址
①PCF8563定時器工作模式
MOV 51H ,#81H ;設(shè)置PCF8563的0EH為81H,啟動定時器,定時器頻率64Hz
MOV 52H ,#64 ;設(shè)置PCF8563的0FH為64,定時器倒計數(shù)值為64
MOV MTD ,#0EH ;定時器控制寄存器字節(jié)首地址
MOV NUMBYT,#3 ;寫字節(jié)
MOV SLA ,#0A2H;取寫器件地址
LCALL WRNBYT ;寫8563
以上配置完成后,PCF8563的INT腳產(chǎn)生周期為1s,脈沖寬度(低電平)約為15ms的脈沖中斷信號。
②PCF8563當(dāng)前時間設(shè)定子程序如下:
MOV 51H,#00H ;啟動時鐘
MOV 52H,#11H ;定時器為中斷模式,脈沖形式
MOV 53H,MIN ;將秒至年的時間寫入發(fā)送緩沖區(qū)
MOV 54H,SEC
MOV 55H,HOUR
MOV 56H,DAY
MOV 57H,WEEK
MOV 58H,MON
MOV 59H,YEAR
MOV SLA,#0A2H ;取寫器件地址
MOV NUMBYT,#10;寫字節(jié)數(shù)
MOV MTD,#00H ;寫入8563寄存器首地址為00H
LCALL WRNBYT ;寫入8563
RET
③讀出時鐘芯片當(dāng)前值子程序設(shè)計
MOV MTD,#02H ;讀時鐘寄存器首字節(jié)地址02H
MOV SLA,#0A2H ;取寫器件地址
MOV NUMBYT,#1 ;寫字節(jié)數(shù)
LCALL WRNBYT ;寫8563
MOV SLA,#0A3H ;取讀器件地址
MOV NUMBYT,#7 ;讀七個時鐘信息
LCALL RDNBYT ;讀取時間并放入緩沖區(qū)
MOV A,40H ;取潷字節(jié)
ANL A,#7FH ;屏蔽無效位
MOV MIN,A ;送秒寄存器
MOV A,41H ;取分字節(jié)
ANL A,#7EH ;屏蔽無效位
MOV MIN,A ;送分寄存器
MOV A,42H ;取小時字節(jié)
ANL A,#3FH ;屏蔽無效位
MOV HOUR,A ;送時寄存器
MOV A,43H ;取天字節(jié)
ANL A,#3FH ;屏蔽無效位
MOV DAY,A ;送天寄存器
MOV A,44H ;取星期字節(jié)
ANL A,#07H ;屏蔽無效位
MOV WEEK,A ;送星期寄存器
MOV A,45H ;取月字節(jié)
ANL A,#1FH ;屏蔽無效位
MOV MOTH,A ;送月寄存器
RET
系統(tǒng)程序流程如圖4所示,中斷服務(wù)程序如5所示。
結(jié)語
此倒計時系統(tǒng)于廣東省六屆大運會中標(biāo),在整個運行過程正常穩(wěn)定工作,達到了大會提出的要求。
相關(guān)推薦
基于PCF8563的數(shù)字時鐘設(shè)計


1.設(shè)計一個籃球24秒倒計時系統(tǒng)。
100s可變模置數(shù)倒計時
PCF8563 RTC時間在使用3個月后損壞了的原因?怎么解決?
PCF8563(RTC)讀取時間有誤是什么原因?qū)е碌模?/a>
PCF8563怎么使用
PCF8563時鐘模塊的資料分享
PCF8563時鐘設(shè)計應(yīng)用
倒計時器,綠燈閃爍的時候倒計時也要繼續(xù)計時,這塊程序怎么寫?
倒計時顯示的問題
倒計時的vi資料下載
倒計時計時器
STC12單片機I2C程序機驅(qū)動PCF8563程序
STC51驅(qū)動PCF8563
nanopi neo怎么使用外部rtc時鐘pcf8563?
【問題】4412開發(fā)板配置pcf8563時鐘芯片驅(qū)動后,無法使用,是什么問題呢?
一種可變信息倒九秒半程倒計時器
為什么PCF8563運行一段時間后就停止了?
低功耗CMOS實時時鐘/日歷芯片PCF8563
關(guān)于PCF8563時鐘模塊的介紹
基于PCF8563時鐘芯片的萬年歷制作資料分享
基于STM32的正倒計時器程序設(shè)計
基于labview的倒計時和定時器
基于labview的定時和倒計時功能小程序
如何去實現(xiàn)一種基于單片機的倒計時牌控制系統(tǒng)設(shè)計
如何實現(xiàn)刷新倒計時效果?
如何讓seg倒計時的同時點亮點陣?
完成倒計時時鐘的設(shè)計資料分享
帶暫停功能的倒計時程序
怎樣去設(shè)計一種基于51單片機的倒計時系統(tǒng)
數(shù)碼管倒計時問題求助
畢設(shè)做的萬年歷PCF8563的鬧鐘報警怎么用
求助基于PCF8563芯片的電子時鐘綜合系統(tǒng)
求基于STC89C52的倒計時的設(shè)計
秒表倒計時
籃球倒計時 案例
請問PCF8563中的定時器定時功能一般用來干什么?
請問pcf8563這個時鐘芯片在altium designer哪個庫里面啊?
請問怎么才能用PCF8563產(chǎn)生秒輸出中斷?
采用PCF8563的萬年歷
PCF8563 pdf datasheet

基于PCF8563戶外型倒計時系統(tǒng)的設(shè)計

外圍器件PCF8563 I2C實時時鐘日歷芯片在8051系統(tǒng)

AN070219 PCF8563中斷輸出功能

PCF8563實時時鐘高精度調(diào)整方法

PCF8563匯編程序

PCF8563在電子時鐘設(shè)計中的應(yīng)用

PCF8563驅(qū)動程序演示實驗

倒計時計數(shù)電路

現(xiàn)場總線型交通倒計時器的設(shè)計


PCF8563日歷時鐘芯片原理及應(yīng)用設(shè)計

籃球倒計時牌[優(yōu)質(zhì)文檔]

pcf8563芯片功能_工作原理和引腳圖及應(yīng)用介紹

PCF8563時鐘芯片驅(qū)動程序分享

如何調(diào)整pcf8563精度_PCF8563高精度調(diào)整方法介紹


基于PCF8563時鐘芯片的萬年歷制作

pcf8563和ds1302有什么區(qū)別_哪個比較好


使用單片機應(yīng)用PCF8563時鐘芯片的C語言程序免費下載

微雪電子RTC時鐘模塊PCF8563 PCF8563T介紹


單片機課設(shè)-60秒倒計時器

課程設(shè)計題九: 倒計時時鐘設(shè)計

19-基于51單片機的倒計時系統(tǒng)

PIC16F877A單片機 (IIC總線+PCF8563芯片)

STM32模擬IIC讀取PCF8563

【DIY】STM8的實時時鐘PCF8563與紅外進出門提醒器

ESP32使用PCF8563時鐘模塊進行網(wǎng)絡(luò)校時

時鐘IC AiP8563替代HYM8563/PCF8563


pcf8563鬧鐘報警的中斷請求

評論