陳燕秀
(貴州理工學(xué)院電氣工程學(xué)院,貴州 貴陽(yáng) 550004)
2013-08-22
陳燕秀(1975-),女,副教授,現(xiàn)主要從事電子線路方面的教學(xué)與研究工作。
基于單片機(jī)的LCD多功能顯示器設(shè)計(jì)
陳燕秀
(貴州理工學(xué)院電氣工程學(xué)院,貴州 貴陽(yáng) 550004)
設(shè)計(jì)了一種基于單片機(jī)的LCD多功能顯示器:該顯示器以STC89C52單片機(jī)為控制核心,以LCD12864作為顯示器,時(shí)鐘產(chǎn)生采用DS1302芯片,溫度采集選用DS18B20,片外數(shù)據(jù)儲(chǔ)存芯片采用CAT24C04。實(shí)際應(yīng)用表明,該顯示器能夠進(jìn)行時(shí)間顯示、溫度采集、電子書(shū)閱讀、圖片顯示、音樂(lè)播放等,具有響應(yīng)速度快、抗干擾能力強(qiáng)、體積小等特點(diǎn)。
單片機(jī);LCD多功能顯示器;控制系統(tǒng)
現(xiàn)代電子產(chǎn)品正在以前所未有的速度革新,向著功能多樣化、體積最小化,低功耗化的方向迅速發(fā)展。針對(duì)現(xiàn)實(shí)生活中對(duì)小型多功能產(chǎn)品的需求,筆者基于單片機(jī)設(shè)計(jì)了一種LCD多功能顯示器。
圖1 系統(tǒng)結(jié)構(gòu)圖
LCD多功能顯示器結(jié)構(gòu)圖1。具體設(shè)計(jì)思路如下:①整個(gè)控制系統(tǒng)采用STC89C52系列單片機(jī)作為控制核心[1]。②采用帶中文字庫(kù)的LCD12864作為顯示器,利用該模塊靈活的接口方式和簡(jiǎn)單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面,并顯示8×4行16×16點(diǎn)陣的漢字。③時(shí)鐘產(chǎn)生采用DS1302,DS1302是美國(guó)DALLAS公司推出的一款高性能、低功耗、帶內(nèi)部RAM的實(shí)時(shí)時(shí)鐘芯片(RTC),能夠?yàn)閱纹瑱C(jī)系統(tǒng)提供日期和時(shí)間。④溫度采集選用DS18B20,使用簡(jiǎn)單。⑤片外數(shù)據(jù)儲(chǔ)存芯片采用CAT24C02,其具有低功耗、掉電不丟失數(shù)據(jù)的特點(diǎn)。⑥控制部分采用5個(gè)獨(dú)立式按鍵,從P2口輸入,一鍵多用。LCD12864采用P0口并口輸出,讀寫(xiě)速度快,連接簡(jiǎn)單,布線美觀。
2.1顯示電路設(shè)計(jì)
LCD12864可構(gòu)成全中文人機(jī)交互圖形界面,可完成圖形顯示,且低電壓低功耗。顯示電路單元電路圖如圖2所示。
2.2時(shí)鐘單元設(shè)計(jì)
實(shí)時(shí)時(shí)鐘/日歷電路提供秒、分、時(shí)、日、星期、月、年的信息,每個(gè)月的天數(shù)和閏年的天數(shù)可自動(dòng)調(diào)整,時(shí)鐘操作可通過(guò)AM/PM標(biāo)志位決定采用24或12小時(shí)時(shí)間格式[2]。DS1302與單片機(jī)之間能簡(jiǎn)單地采用同步串行的方式進(jìn)行通信,僅需3根I/O線(包括復(fù)位(RST)、I/O數(shù)據(jù)線、串行時(shí)鐘(SCLK))。DS1302工作時(shí)功耗很低(保持?jǐn)?shù)據(jù)和時(shí)鐘信息時(shí),功耗小于1mW)。為了使DS1302在斷電的情況下也能工作,在設(shè)計(jì)中加入了一個(gè)3.2V的備用電池(J4),由于耗電量小,電池壽命至少在2a以上。時(shí)鐘單元電路圖如圖3所示。
圖2 顯示電路單元電路圖 圖3 時(shí)鐘單元電路圖
圖4 溫度采集單元電路圖
2.3溫度采集電路設(shè)計(jì)
溫度采集選用DS18B20,其具有以下主要特性:①獨(dú)特的單線接口方式,與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)雙向通訊。②支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫。③在使用中不需要任何外圍元件。④測(cè)溫范圍-55℃~125℃。溫度采集單元電路圖如圖4所示。
2.4儲(chǔ)存電路設(shè)計(jì)
為了擴(kuò)展片外數(shù)據(jù)存儲(chǔ)容量,采用一片基于I2C-BUS 的CAT24C02作為片外擴(kuò)展[3],其2K的容量足以保存程序所需的顯示點(diǎn)陣代碼、電子書(shū)字符和簡(jiǎn)單的音樂(lè)容量。
圖5 主程序流程設(shè)計(jì)圖
3.1主程序設(shè)計(jì)
主程序設(shè)計(jì)內(nèi)容包括主程序的起始地址、中斷服務(wù)程序的起始地址、有關(guān)內(nèi)存單元及相關(guān)部件的初始化和一些子程序調(diào)用等,主程序流程設(shè)計(jì)圖如圖5所示。
3.2時(shí)間程序設(shè)計(jì)
雖然DS1302芯片省去了時(shí)鐘產(chǎn)生的步驟,但是調(diào)時(shí)程序要注意DS1302內(nèi)部產(chǎn)生的時(shí)鐘是以16進(jìn)制形式出現(xiàn),調(diào)試中發(fā)現(xiàn)從00H-09H為1到9數(shù)字,09H后并不是0AH而是10H,因而調(diào)時(shí)程序應(yīng)避免0AH-0FH的出現(xiàn),否則重置以后會(huì)出錯(cuò)[4]。此外,鬧鐘程序是一個(gè)比較程序,將需要比較的時(shí)間設(shè)置并儲(chǔ)存,在時(shí)間運(yùn)行時(shí)不斷進(jìn)行比較,一旦時(shí)、分、秒都和設(shè)置的時(shí)間相符合,則啟動(dòng)鬧鐘。時(shí)間程序流程設(shè)計(jì)圖如圖6所示。
圖6 時(shí)間程序流程設(shè)計(jì)圖
基于單片機(jī)系統(tǒng)設(shè)計(jì)了LCD多功能顯示器,產(chǎn)品設(shè)計(jì)中遵循硬件電路簡(jiǎn)單化、盡可能采用軟件編程完成功能控制的原則,且編程采用匯編語(yǔ)言完成,使得產(chǎn)品具有體積小、功能多、響應(yīng)速度快等特點(diǎn),可以在市場(chǎng)上推廣應(yīng)用。
[1][1]何立民.單片機(jī)初級(jí)教程——單片機(jī)基礎(chǔ)[M].北京:北京航空航天大學(xué)出版社,2006.
[2]韓志軍,沈晉源,王振波.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)——入門(mén)向?qū)c設(shè)計(jì)實(shí)例[M].北京:機(jī)械工業(yè)出版社,2005.
[3]鐘富昭,張晨.8051單片機(jī)典型模塊設(shè)計(jì)與應(yīng)用[M].北京:人民郵電出版社,2007.
[4]陳有卿,謝剛.新穎電子模塊應(yīng)用手冊(cè)[M].北京:機(jī)械工業(yè)出版社,2003.
TP273
A
1673-1409(2013)31-0090-03
[編輯] 李啟棟