張琬君 潘世全
1中材建設(shè)有限公司(100176)2河南建筑材料研究設(shè)計(jì)院有限責(zé)任公司(450002)
基于ARM的電子公告顯示系統(tǒng)
張琬君1潘世全2
1中材建設(shè)有限公司(100176)2河南建筑材料研究設(shè)計(jì)院有限責(zé)任公司(450002)
這里主要講述了基于ARM的嵌入式公告顯示系統(tǒng)的設(shè)計(jì),主要由三部分組成:上位機(jī)、ARM系統(tǒng)、LCD液晶顯示屏。其中上位機(jī)通過串口方式與ARM芯片進(jìn)行數(shù)據(jù)通信,ARM將數(shù)據(jù)以I/O方式送到LCD液晶屏以顯示出來。上位機(jī)可實(shí)現(xiàn)遠(yuǎn)程控制,主要由VB語(yǔ)言實(shí)現(xiàn)其代碼編寫,ARM芯片的功能代碼主要由C語(yǔ)言實(shí)現(xiàn),最終達(dá)到LCD顯示屏能正確的顯示上位機(jī)所傳送的數(shù)據(jù)內(nèi)容。
嵌入式;ARM;LCD
嵌入式系統(tǒng)及ARM的應(yīng)用是當(dāng)前的熱點(diǎn)和趨勢(shì),具有廣闊的前景和現(xiàn)實(shí)意義??梢栽谠O(shè)計(jì)中學(xué)會(huì)使用ARM,包括硬件結(jié)構(gòu)和匯編指令的使用,也可以用高級(jí)語(yǔ)言寫代碼,鍛煉了編程能力和硬件設(shè)計(jì)能力。
EasyARM2200開發(fā)板是一款功能強(qiáng)大的32位ARM單片機(jī)開發(fā)板,采用了PHILIPS公司的ARM7TDMI-S核、總線開放的單片機(jī)LPC2210,具有JTAG調(diào)試等功能。板上提供了一些鍵盤、LED、RS232等常用功能部件,并具有IDE硬盤接口、CF存儲(chǔ)卡接口、以太網(wǎng)接口和MODEM接口等等,并設(shè)計(jì)有外設(shè)PACK,極大地方便了用戶在32位ARM嵌入式系統(tǒng)領(lǐng)域進(jìn)行開發(fā)試驗(yàn)。
整個(gè)系統(tǒng)設(shè)計(jì)由ARM芯片、液晶顯示屏以及PC機(jī)實(shí)現(xiàn)。上位機(jī)通過串口方式向ARM系統(tǒng)發(fā)送所要顯示的數(shù)據(jù)內(nèi)容,ARM系統(tǒng)將接收到的內(nèi)容放入數(shù)據(jù)緩存區(qū)中,然后以I/O方式送入液晶屏控制器處理,進(jìn)而在LCD屏上顯示出來。
T6963C是TOSHIBA公司的點(diǎn)陣式圖形液晶控制器,T6963C常用于中規(guī)模的單色點(diǎn)陣圖形液晶的顯示控制器,其最大特點(diǎn)是具有獨(dú)特的硬件初始化值設(shè)置功能,顯示驅(qū)動(dòng)所需要的參數(shù)占空比系數(shù)、驅(qū)動(dòng)傳輸?shù)淖止?jié)數(shù)/行、字符的字體選擇等均由引腳電平設(shè)置。
T6963C的控制數(shù)據(jù)傳輸方法:傳輸數(shù)據(jù)時(shí)一般是“先傳數(shù)據(jù),再傳命令”,內(nèi)藏LCD控制器與CPU時(shí)鐘同步運(yùn)行。T6963C液晶屏像素為240×128,所寫具體字符大小可自己定義。本文中所用字符均定義在14×14的方框內(nèi),不足此大小的字符由空白填寫。由于此液晶屏沒有帶字庫(kù),所寫字符全部由字模提取軟件生成相應(yīng)的字模,放入字庫(kù)中,然后由函數(shù)調(diào)用將其取出,進(jìn)而顯示出來。
這里研究的是一個(gè)公告顯示系統(tǒng),要求以公告的形式將所要通知的內(nèi)容顯示出來,具體顯示方式為由下至上滾動(dòng)顯示。上位機(jī)通過串口發(fā)來的數(shù)據(jù)是以中斷方式到達(dá)ARM系統(tǒng),在顯示完一次內(nèi)容時(shí)自動(dòng)清屏一次,然后馬上顯示第二次,以此類推不斷循環(huán)。
將PC機(jī)串口與UART0相連,LCD屏以I/O方式連接到EasyARM2200開發(fā)板上,在PC機(jī)上用串口調(diào)試助手發(fā)送數(shù)字,觀察LCD屏上是否有對(duì)應(yīng)的漢字顯示。要求用上位機(jī)發(fā)送數(shù)據(jù)以達(dá)到遠(yuǎn)程控制顯示,用VB編寫上位機(jī)發(fā)送窗口代碼,同時(shí)配置串口可以達(dá)到與串口調(diào)試助手一樣的效果。用MSComm控件向計(jì)算機(jī)串口發(fā)送數(shù)據(jù),ARM系統(tǒng)負(fù)責(zé)接受數(shù)據(jù)并經(jīng)過處理后顯示在LCD屏上。在VB設(shè)計(jì)界面上加入MSComm控件,設(shè)置加入串口控件的波特率為115 200 b/s,串口號(hào)為1。設(shè)置一個(gè)與ARM系統(tǒng)相對(duì)應(yīng)的中文字庫(kù),保存為HZ.Dat文件。字庫(kù)在文件中以下面的形式:數(shù)字-漢字。用戶在輸入欄中輸入要顯示的漢字,利用子程序ChangeTo轉(zhuǎn)換為字庫(kù)中對(duì)應(yīng)的數(shù)字,通過MSComm控件的OUTPUT屬性將轉(zhuǎn)換后的數(shù)字發(fā)送到串口,最后在LCD屏上能正確顯示。
這里從研究的角度出發(fā),實(shí)現(xiàn)上位機(jī)控制LCD顯示屏。設(shè)計(jì)的中心思想就是上位機(jī)通過串口發(fā)送一些數(shù)據(jù),串口接收到以后由ARM系統(tǒng)進(jìn)行處理然后送到LCD屏上顯示出來。整個(gè)過程基本達(dá)到了設(shè)計(jì)本身的要求,對(duì)LCD屏的原理、串口數(shù)據(jù)通信有清晰的認(rèn)識(shí),也最終實(shí)現(xiàn)了上位機(jī)遠(yuǎn)程控制。
[1]周立功.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京:北京航空航天大學(xué)出版社,2005.
[2]陳新,王建東.基于ARM的高性能遠(yuǎn)程監(jiān)控系統(tǒng)[J].微處理機(jī),2007,28(1):19-21.
[3]張媛,黎文福.一種TFT LCD數(shù)字源驅(qū)動(dòng)芯片的設(shè)計(jì)[J].電子技術(shù),2007(3):17-20.