摘要:AVR" title="AVR">AVR系列ATmega128L" title="ATmega128L">ATmega128L單片機(jī)作為主控芯片,,該芯片可通過(guò)ISP接口方便地對(duì)其內(nèi)建Flash進(jìn)行擦除和寫入操作,;采用 DALLAS公司的具有涓細(xì)電流充電功能的低功耗的DS1302作為實(shí)時(shí)時(shí)鐘芯片,該芯片可以對(duì)年,、月,、日,、周日、時(shí),、分,、秒進(jìn)行計(jì)時(shí),,還具有閏年補(bǔ)償?shù)榷喾N功能,,而且其使用壽命長(zhǎng),誤差??;采用DS18B20獲得當(dāng)前環(huán)境溫度;采用128×64像素的LCD用漢字直觀顯示年月日,、時(shí)分秒,、農(nóng)歷、生肖,、室溫等豐富內(nèi)容,;采用四顆獨(dú)立式按鍵可修改當(dāng)前時(shí)間和設(shè)定鬧鈴時(shí)間;采用ISDN110語(yǔ)音模塊和蜂鳴器實(shí)現(xiàn)音樂(lè)提示定時(shí)鬧鈴,;通過(guò)農(nóng)歷算法,,可將公歷日期轉(zhuǎn)換為農(nóng)歷年月日并可獲取天干地支紀(jì)年、生肖,、節(jié)氣等相關(guān)農(nóng)歷信息,。
關(guān)鍵詞:DS1302;DS18B20,;單片機(jī),;LCD;農(nóng)歷算法
0 引言
隨著信息技術(shù)的發(fā)展和生活水平的提高電子萬(wàn)年歷正逐步走進(jìn)人民大眾的生活,,其因壽命長(zhǎng),、誤差小而且用漢字直觀顯示年月日、時(shí)分秒,、農(nóng)歷,、生肖、室溫等豐富的內(nèi)容,。
1 設(shè)計(jì)要求與采用方案
1.1 系統(tǒng)實(shí)現(xiàn)功能
(1)基本功能:a.LCD漢字顯示年月日,、時(shí)分秒、星期,;b.LCD漢字顯示天干地支紀(jì)年,、農(nóng)歷日期、24節(jié)氣,,12生肖,;c.LCD顯示室溫,;d.整點(diǎn)蜂鳴器報(bào)時(shí),定時(shí)鬧鈴時(shí)間到則蜂鳴器提示,;e.通過(guò)4個(gè)按鍵,,用來(lái)設(shè)置時(shí)間和進(jìn)行定時(shí)設(shè)置。
(2)創(chuàng)新設(shè)計(jì):a.采用128×64的LCD顯示萬(wàn)年歷內(nèi)容,;b.采用ISD111O語(yǔ)音模塊播放鬧鈴鈴聲,。
1.2 系統(tǒng)基本方案選擇
1.2.1 單片機(jī)
系統(tǒng)的單片機(jī)采用高性能、低功耗的AVRATmegal28L微控制器,。系統(tǒng)利用4個(gè)外部中斷接4個(gè)獨(dú)立式按鍵來(lái)進(jìn)行參數(shù),、功能的設(shè)置,蜂鳴器用來(lái)整點(diǎn)提示和鬧鈴提示,。程序下載可通過(guò)預(yù)留ISP接口方便地對(duì)系統(tǒng)軟件進(jìn)行升級(jí),、添加或裁剪系統(tǒng)功能。
1.2.2 顯示模塊
液晶顯示模塊是128×64點(diǎn)陣的漢字圖形型液晶顯示模塊,,可顯示漢字及圖形,,內(nèi)置國(guó)標(biāo)GB2312碼簡(jiǎn)體中文字庫(kù)(16×16點(diǎn)陣)、128個(gè)字符 (8×16點(diǎn)陣)及64×256點(diǎn)陣顯示RAM(GDRAM),??膳c單片機(jī)直接接口,提供兩種接口來(lái)連接微處理機(jī):8-位并行及串行兩種連接方式,。具有多種功能:光標(biāo)顯示,、畫面移位、睡眠模式等,。
1.2.3 時(shí)鐘芯片
采用DS1302時(shí)鐘芯片實(shí)現(xiàn)時(shí)鐘,,DS1302芯片是一種高性能的時(shí)鐘芯片,可自動(dòng)對(duì)秒,、分,、時(shí)、日,、周,、月、年以及閏年補(bǔ)償?shù)哪赀M(jìn)行計(jì)數(shù),,而且精度高,,工作電壓2.5V~5.5V范圍內(nèi),2.5V時(shí)耗電小于300nA,。
1.2.4 溫度傳感器
采用數(shù)字式溫度傳感器DS18B20,,其僅需一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,易于與單片機(jī)連接,,可以去除A/D漠塊,,降低硬件成本,,簡(jiǎn)化系統(tǒng)電路。另外,,數(shù)字式溫度傳感器還具有測(cè)量精度高,、測(cè)量范圍廣等優(yōu)點(diǎn)。
2 系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn)
2.1 系統(tǒng)硬件設(shè)計(jì)框圖
2.2 系統(tǒng)硬件概述
本電路由AVR ATmegal28L單片機(jī)為控制核心,,具有在線編程功能,,低功耗,能在3V超低壓工作,;時(shí)鐘電路由DS1302提供,,它是一種高性能、低功耗,、帶RAM的實(shí)時(shí)時(shí)鐘電路,可以對(duì)年,、月,、日、周日,、時(shí),、分、秒進(jìn)行計(jì)時(shí),,具有閏年補(bǔ)償功能,,工作電壓為2.5V~5.5V。采用三線接口與單片機(jī)進(jìn)行同步通信,,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或RAM數(shù)據(jù),。DS1302內(nèi)部有一個(gè)31×8的用于臨時(shí)性存放數(shù)據(jù)的RAM 寄存器??僧a(chǎn)生年,、月、日,、周日,、時(shí)、分,、秒,,具有使用壽命長(zhǎng),精度高和低功耗等特點(diǎn),,同時(shí)具有掉電自動(dòng)保存功能,,本設(shè)計(jì)中為DS1302增加了備用電池,當(dāng)主電源掉電時(shí),,備用電池自動(dòng)為其供電,;溫度的采集由DS18B20構(gòu)成,;顯示部份由128×64點(diǎn)陣的漢字圖形型LCD模塊來(lái)完成顯示功能;當(dāng)鬧鈴時(shí)間到時(shí),,通過(guò)ISD111O語(yǔ)音錄放模塊播放鬧鈴鈴聲,。系統(tǒng)硬件實(shí)物圖見圖2。
2.3 主要單元電路的設(shè)計(jì)
2.3.1 單片機(jī)主控制模塊的設(shè)計(jì)
AVR ATmegal28L單片機(jī)為64引腳TQFP封裝,,系統(tǒng)的ISP下載接口,、晶振電路、復(fù)位電路,、蜂鳴器電路如圖3所示,。
2.3.2 時(shí)鐘電路模塊的設(shè)計(jì)
圖4為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.768 kHz晶振,。RST是復(fù)位/片選線,通過(guò)把RST輸入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送,。RST輸入有兩種功能:首先,,RST接通控制邏輯,允許地址/命令序列送入移位寄存器,;其次,,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時(shí),,所有的數(shù)據(jù)傳送被初始化,,允許對(duì)DS1302進(jìn)行操作。如果在傳送過(guò)程中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ù)輸入端(雙向),。SCLK始終是輸入端。
2.3.3 溫度采集模塊設(shè)計(jì)
如圖5所示,。采用數(shù)字式溫度傳感器DS18B20,,它具有測(cè)量精度高,電路連接簡(jiǎn)單的特點(diǎn),,此類傳感器僅需要一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,,使用PC7與DS18B20的I/O口連接加一個(gè)上拉電阻,VCC接電源,,VSS接地,。
2.3.4 顯示模塊的設(shè)計(jì)
設(shè)計(jì)采用128×64漢字圖形顯示LCD模塊,一屏可顯示32個(gè)漢字(16×16點(diǎn)陣字庫(kù)),,其接口如圖6所示,。
2.3.5 語(yǔ)音錄放模塊
設(shè)計(jì)采用ISD1110語(yǔ)音芯片配合相應(yīng)的外圍元件構(gòu)成語(yǔ)音錄放電路,用來(lái)實(shí)現(xiàn)語(yǔ)音提示功能,,其電路如圖7所示,。
2.3.6 系統(tǒng)PCB圖
系統(tǒng)PCB如圖8所示。
3 系統(tǒng)的軟件設(shè)計(jì)
3.1 程序流程框圖
設(shè)計(jì)主程序流程圖如圖9所示,。
3.2 設(shè)計(jì)實(shí)現(xiàn)界面
3.2.1 萬(wàn)年歷主界面
如圖10所示,第一行顯示公歷的年月日,,第二行顯示時(shí)分秒和星期,,第三行顯示農(nóng)歷的天干地支紀(jì)年和農(nóng)歷月日,第四行顯示農(nóng)歷生肖,、節(jié)氣以及當(dāng)前的氣溫,。
3.2.2 日期時(shí)間設(shè)置界面
日期時(shí)間設(shè)置界面如圖11所示。
3.2.3 鬧鈴設(shè)置界面
鬧鈴設(shè)置界面如圖12所示,。
4 結(jié)論
本文所介紹的萬(wàn)年歷的設(shè)計(jì)方案已經(jīng)調(diào)試成功,,其功能全部實(shí)現(xiàn),本產(chǎn)品成本低,、壽命長(zhǎng),、誤差小、功能齊全,,達(dá)到設(shè)計(jì)要求,。