新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > SPCE061A與液晶模塊HS12864-1的接口及其編程

SPCE061A與液晶模塊HS12864-1的接口及其編程

作者: 時(shí)間:2011-05-05 來源:網(wǎng)絡(luò) 收藏



3 單片機(jī)的硬件設(shè)計(jì)


是繼SPCE500A等之后凌陽科技推出的又一款16位結(jié)構(gòu)的微控制器。CPU內(nèi)核采用凌陽最新推出的16位u nsp微處理器芯片,比MCS-51 8位機(jī)的MCU集成度更高,使用更加靈活方便,縮短了開發(fā)周期和成本。
采用RISC 的 比8位的MCS 51系列執(zhí)行效率高,速度更快,較寬的工作電壓,低功耗抗干擾的設(shè)計(jì),使061A在電池供電的應(yīng)用領(lǐng)域更具特色,其內(nèi)置2K字SRAM和32K FLASH,32位通用可輸入/輸出端口,具有WatchDog等功能,在儀器儀表、工業(yè)控制和通訊產(chǎn)品等方面應(yīng)用日益廣泛。
在程序設(shè)計(jì)方面μ'nSP?單片機(jī)的匯編指令針對(duì)C語言進(jìn)行了優(yōu)化,所以其匯編的指令格式很多地方直接類似于C語言。另外其開發(fā)仿真環(huán)境IDE也直接提供了C語言的開發(fā)環(huán)境,C函數(shù)和匯編函數(shù)可以方便地進(jìn)行相互調(diào)用[2,3]。與SPCE061A單片機(jī)的硬件電路見圖2。

圖2中采用并行通信方式,單片機(jī)的IOA0-IOA7口與的DB0-DB7口相連作為數(shù)據(jù)輸入輸出用;即IOB0- IOB 4口與模組的CS1、CS2、D/I、R/W、E相連作為單片機(jī)對(duì)的控制口。

4顯示程序設(shè)計(jì)

在液晶上顯示整屏字符或圖像有兩種方法:一種是將所要顯示的字模數(shù)據(jù)一次性發(fā)送到顯示數(shù)據(jù)RAM中;另外一種是在屏幕上指定位置進(jìn)行單獨(dú)顯示[4]。兩種方法都要在控制器空閑的條件下進(jìn)行操作,在操作之前都要先讀取忙標(biāo)志,判斷控制器是否處于忙狀態(tài),在一般情況下,可以用延時(shí)等待的方法代替。
本系統(tǒng)程序主要包括主程序和幾個(gè)子程序塊: LCD初始化, 液晶顯示屏選擇,LCD顯示,還有若干個(gè)控制子程序。主程序分別調(diào)用這些子程序?qū)崿F(xiàn)對(duì)液晶顯示器操作控制。程序流程圖見圖3。


圖3 程序流程圖

凌陽單片機(jī)的語言常用的有二種:匯編語言和C語言。匯編語言的機(jī)器代碼生成效率很高但可讀性不強(qiáng),而C語言在大多數(shù)情況下其機(jī)器代碼生成效率和匯編語言相當(dāng),但可讀性和可移植性卻遠(yuǎn)遠(yuǎn)超過匯編語言,而且C語言還可以嵌入?yún)R編來解決高時(shí)效性的代碼編寫問題。對(duì)于開發(fā)周期來說,用C語言的開發(fā)周期通常要小于匯編語言很多。綜合以上C語言的優(yōu)點(diǎn),在設(shè)計(jì)時(shí)選擇了C語言。
這里給出右半屏送命令/數(shù)據(jù)程序,說明SPCE061A單片機(jī)程序設(shè)計(jì)中對(duì)IOA /IOB口的設(shè)置。凌陽單片機(jī)控制液晶顯示部分程序如下:


本系統(tǒng)調(diào)試采用的是凌陽61板(即SPCE061A EMU BOARD)和u'nSP IDE 集成開發(fā)環(huán)境。硬件調(diào)試較為簡(jiǎn)單,只需調(diào)節(jié)好液晶的對(duì)比度和背光亮度即可;在軟件方面,使用凌陽u'nSP IDE 軟件來編譯調(diào)試液晶程序。
在調(diào)試中字模數(shù)據(jù)來自字模生成軟件Zimo3,其生成的字模數(shù)據(jù)在本程序中不能直接使用,運(yùn)行結(jié)果會(huì)出現(xiàn)字體的上下部分顛倒,需要將其順序反轉(zhuǎn)。
調(diào)試效果達(dá)到了程序設(shè)計(jì)的要求。


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉