隨著科技的發(fā)展,,ARM" title="ARM">ARM在社會各個方面的應(yīng)用越來越廣,。ARM芯片廣泛應(yīng)用于無線產(chǎn)品、PDA,、GPS,、網(wǎng)絡(luò),、消費(fèi)電子產(chǎn)品、STB及智能卡,。LPC2138是Philips公司生產(chǎn)的基于ARM7TDMI的RISC微處理器,,主頻可達(dá)50MHz。液晶顯示是嵌入式系統(tǒng)中反映系統(tǒng)輸入/輸出的人機(jī)交互界面,,液晶顯示以其微功耗,、體積小、顯示內(nèi)容豐富,、模塊化,,接口電路簡單等諸多優(yōu)點(diǎn)得到廣泛應(yīng)用。本文在介紹以HD44780" title="HD44780">HD44780為控制器的LM016L" title="LM016L">LM016L液晶模塊" title="液晶模塊">液晶模塊的引腳結(jié)構(gòu),、功能的基礎(chǔ)上,,搭建LM016L與LPC2138芯片的硬件接口電路、用c語言編寫顯示程序,采用PROTEUS" title="PROTEUS">PROTEUS軟件進(jìn)行功能仿真,。
1 液晶模塊結(jié)構(gòu)及功能簡介
LM016L液晶模塊采用HD44780控制器,。HD44780具有簡單而功能較強(qiáng)的指令集,可以實(shí)現(xiàn)字符移動,、閃爍等功能,。HD44780控制器由兩個8位寄存器、指令寄存器(IR)和數(shù)據(jù)寄存器(DR),、忙標(biāo)志(BF),、顯示數(shù)據(jù)RAM(DDRAM)、字符發(fā)生器ROM(CGROM),、字符發(fā)生器RAM(CGRAM),、地址計(jì)數(shù)器(AC)構(gòu)成。IR用于寄存指令碼,,只能寫入不能讀出,;DR用于寄存數(shù)據(jù),數(shù)據(jù)由內(nèi)部操作自動寫入DDRAM和CGRAM,,或者暫存從DDRAM和CGRAM讀出的數(shù)據(jù),。BF為1時,液晶模塊處于內(nèi)部處理模式,,不響應(yīng)外部操作指令和接受數(shù)據(jù),。DDRAM用來存儲顯示的字符,能存儲80個字符碼,。CGROM由8位字符碼生成5 x 7點(diǎn)陣字符160種和5×10點(diǎn)陣字符32種,,8位字符編碼和字符的對應(yīng)關(guān)系。CGRAM是為用戶編寫特殊字符留用的,,它的容量僅64字節(jié),。可以自定義8個5×7點(diǎn)陣字符或者4個5×10點(diǎn)陣字符,。AC可以存儲DDRAM和CGRAM地址,,如果地址碼隨指令寫入IR,則IR自動把地址碼裝入AC,,同時選擇DDRAM或者CGRAM單元。LMO16L液晶模塊的引腳功能見下表1,。
2 基于Proteus ISIS 7的液晶模塊仿真
2.1 接口設(shè)計(jì)
運(yùn)行Proteus ISIS 7進(jìn)入設(shè)計(jì)界面,,依照圖1所示在元件庫中選擇需要的元件。Lpc2138的P0.0-P0.7端口作為8位數(shù)據(jù)的輸出端,,P0.8,、P0.9、P0.10作為控制信號的輸出端,連接完成的電路如圖l所示,。
2.2 軟件設(shè)計(jì)
電路圖繪制好之后,,就可以編寫LM016L的驅(qū)動程序。LM016L的操作有兩大類:讀操作和寫操作,。一般情況下不需要從液晶中讀取數(shù)據(jù),,所以對液晶操作主要是寫指令和寫數(shù)據(jù)兩個寫操作,對于忙標(biāo)志(BF),,查詢的方法,,保證液晶模塊有足夠時間進(jìn)行內(nèi)部數(shù)據(jù)處理。在寫源程序時,,需要根據(jù)液晶模塊的時序圖編寫程序,。LM016L的時序如圖2所示。
根據(jù)電路圖1定義引腳:RS BIT P0.8,;RW BIT P0.9,;LCD E BIT PO.10。
本設(shè)計(jì)的開發(fā)環(huán)境為keil uvision3,,程序大體分為初始化,、控制信息與數(shù)據(jù)傳輸3部分。下面就將結(jié)合程序源代碼略加說明:
用keil軟件編譯后生成HEX文件,,在Proteus中打開lpc2138芯片屬性對話框,,將生成的HEX文件加載進(jìn)去,再進(jìn)行仿真運(yùn)行就可以看到圖3的結(jié)果,,說明設(shè)計(jì)成功,。
3 結(jié)束語
利用Proteus實(shí)現(xiàn)了對ARM7+LM016L液晶模塊的仿真,實(shí)現(xiàn)了字符串的顯示,。Proteus為ARM學(xué)習(xí)提供了很好的軟件平臺,,使初學(xué)者可以拋開電路設(shè)計(jì)中的一些細(xì)枝末節(jié),快速掌握ARM的核心內(nèi)容,。同時該方法不需要硬件資源,,也為學(xué)校開設(shè)ARM課程闖出一條最佳途徑。