引言
隨著嵌入式系統(tǒng)技術(shù)的飛速發(fā)展,工業(yè)設(shè)備產(chǎn)品也越來(lái)越現(xiàn)代化,普遍要求可視化操作。LCD
觸摸屏低耗能.散熱小,成本低,纖薄輕巧,外形尺寸小,安裝容易。使用LCD觸摸屏作為工業(yè)設(shè)備的輸入輸出設(shè)備既能達(dá)到可視化的要求,方便現(xiàn)場(chǎng)操作,又能降低產(chǎn)品的成本。而在產(chǎn)品的整體設(shè)計(jì)過(guò)程中,人機(jī)交互界面的設(shè)計(jì)往往占據(jù)著很大一部分工作,這樣,不但極大地增加了產(chǎn)品的開發(fā)成本瓶且延長(zhǎng)了產(chǎn)品的上市周期。本文設(shè)計(jì)的基于S3C44BOX的人機(jī)交互界面是一種可定制、簡(jiǎn)單易用、性能優(yōu)良的通用型人機(jī)交互界面,能很好地解決上述問(wèn)題。
1、系統(tǒng)結(jié)構(gòu)
系統(tǒng)主要包括三個(gè)部分,分別為PC機(jī)、S3C4480X微處理器和LCD觸摸屏模塊。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
圖1系統(tǒng)結(jié)構(gòu)框圖
本系統(tǒng)為基于S3C44BOX的工業(yè)設(shè)備提供交互接口,通過(guò)該系統(tǒng)可以給工業(yè)設(shè)備提供一個(gè)可視化的人機(jī)界面。來(lái)自PC機(jī)的定制好的界面信息存儲(chǔ)在ARM的FLASH存儲(chǔ)器內(nèi)。在應(yīng)用當(dāng)中,當(dāng)微處理器接收到觸摸屏按鍵信息時(shí),對(duì)工業(yè)設(shè)備進(jìn)行控制。同時(shí)微處理器也對(duì)LCD進(jìn)行界面的刷新,這樣以完成人機(jī)交互。
2、系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件電路原理如圖2所示。其中S3C4480X為CPU內(nèi)核,320x240點(diǎn)陣LCD觸摸屏為主要的輸入輸出設(shè)備。
圖2系統(tǒng)硬件電路原理圖
2.1LCD觸摸屏模塊OCMJ15x20D介紹
本系統(tǒng)顯示部分采用的是OCMJ15x20D(320x240點(diǎn)陣)D系列中文液晶濕示模塊,其中OCMJ表示奧可拉中文集成模塊。這是一個(gè)中英文文字與繪圖模式的點(diǎn)陣液晶屁示模塊,內(nèi)建512KByte的ROM字形碼,可以顯示中文字型、數(shù)字符號(hào)、英日歐文等字母,并且內(nèi)建雙圖層(TwoPage)的顯爪內(nèi)存。在文字模式中,可接收標(biāo)準(zhǔn)中文文字內(nèi)碼直接顯示中文,而不需要進(jìn)入繪圖模式以繪圖方式描繪中文,提升液晶顯示中文之效率。該模塊整合了多項(xiàng)的實(shí)用界面,包含內(nèi)建的10-BitADC.提供觸控屏接口。OCMJ15X20D(V3.2)的觸摸屏是用FM7843控制的,該控制器已集成在模塊上,模塊已留出FM7843的控制線供客戶使用(OCMJ15X20D上的J5腳),可直接使用3V供電而不需外接負(fù)電壓。
模塊FM7843是四線電阻式觸摸屏輸入控制芯片。它是一款具有同步串行接口的12位采樣模數(shù)轉(zhuǎn)換器。在125kHz吞吐速率和2.7V電壓下的功耗為750μW.而在關(guān)閉模式下的功耗僅為0.5μW。它具有低功耗和高速等特性,因此被廣泛應(yīng)用。引腳X+、Y+、X-、Y-是轉(zhuǎn)換器模擬輸入端,DCLK是外部時(shí)鐘輸入;CS是片選端:DIN是串行輸入,其控制數(shù)據(jù)通過(guò)該引腳輸入;DOUT是串行數(shù)據(jù)輸出.用于輸出轉(zhuǎn)換后的觸摸位置數(shù)據(jù)。zui大數(shù)為二進(jìn)制的4095;IN3、IN4是輔助輸入;PENIRQ是PEN中斷引腳。其中,S3C44BOX共使用6條與FM7843接口相連。
2.2系統(tǒng)的工作原理
OCMJ15x20D模塊內(nèi)置LCD控制器,并將觸摸屏安裝在LCD液品屏上,設(shè)計(jì)相應(yīng)的控制電路對(duì)LCD和觸摸屏控制。當(dāng)用戶操作觸摸屏?xí)r,模塊FM7843控制芯片對(duì)觸摸點(diǎn)進(jìn)行檢測(cè),并把檢測(cè)到的信息送出轉(zhuǎn)換為相應(yīng)的坐標(biāo),以供S3C44BOX處理器讀取。
3、系統(tǒng)軟件設(shè)計(jì)及實(shí)現(xiàn)
3.1系統(tǒng)軟件介紹
用戶可以根據(jù)實(shí)際應(yīng)用中的控制系統(tǒng)的需要及控制系統(tǒng)與人機(jī)交互界面的約定,通過(guò)PC機(jī)上的可視化人機(jī)界面定制軟件,定制好整個(gè)界面信息。然后把定制好的界面信息下載到ARM的Flash中,就可以輕松地實(shí)現(xiàn)人機(jī)界面的定制。在應(yīng)用中,ARM處理器通過(guò)直接操作I/O口與人機(jī)交互界面系統(tǒng)進(jìn)行交互,讀取觸摸屏信息。然后根據(jù)讀取的信息執(zhí)行相應(yīng)的操作。系統(tǒng)的軟件部分由用戶引導(dǎo)程序和應(yīng)用程序組成。系統(tǒng)運(yùn)行后,由用戶引導(dǎo)程序決定是執(zhí)行界面信息的更新還是正常運(yùn)行。若執(zhí)行界面信息的更新,則系統(tǒng)通過(guò)相關(guān)函數(shù)接收界面定制信息并保存在Flash中,然后通過(guò)本地讀取新的界面定制信息建立鏈表網(wǎng)絡(luò);若正常運(yùn)行,則直接從本地瀆取舊的界面定制信息建立鏈表網(wǎng)絡(luò)。應(yīng)用程序?qū)崿F(xiàn)的功能則包括觸摸屏輸入處理及界面的顯示。用戶通過(guò)本系統(tǒng)可以對(duì)工業(yè)設(shè)備所有與軟件相關(guān)的參數(shù)進(jìn)行配置。
3.2程序設(shè)計(jì)
3.2.1界面的定制與顯示
界面的定制足通過(guò)建立網(wǎng)絡(luò)鏈表的方式實(shí)現(xiàn)的。構(gòu)建好鏈表網(wǎng)絡(luò)后就進(jìn)入應(yīng)用程序階段,即系統(tǒng)進(jìn)入正常運(yùn)行狀態(tài)。通過(guò)系統(tǒng)中設(shè)定當(dāng)前屏指針、當(dāng)前項(xiàng)指針及已構(gòu)建的鏈表網(wǎng)絡(luò)等來(lái)實(shí)現(xiàn)人機(jī)交互界面的操作。
同一屏幕的項(xiàng)構(gòu)成雙向循環(huán)鏈表、鏈接屏幕構(gòu)成單向循環(huán)鏈表。實(shí)現(xiàn)方法:先以屏為單位建立每屏的橫向雙向循環(huán)鏈表;再遍歷各屏的雙向鏈表,為各屏的項(xiàng)建立鏈接關(guān)系,進(jìn)而構(gòu)成一個(gè)鏈表網(wǎng)絡(luò)。通過(guò)遍歷當(dāng)前屏幕的橫向雙向循環(huán)鏈表來(lái)逐一顯示屏幕的項(xiàng)。其巾對(duì)各類項(xiàng)的處理如下:①當(dāng)屏幕項(xiàng)是文本時(shí),直接讀取并顯示。②當(dāng)屏幕項(xiàng)為整型、浮點(diǎn)時(shí).通過(guò)向控制系統(tǒng)索取其值并顯示。③當(dāng)屏幕項(xiàng)為枚舉時(shí),通過(guò)向控制系統(tǒng)索取其值,再按值讀取對(duì)應(yīng)的字符串并顯示。
3.2.2觸摸屏信息的處理
觸摸屏按鍵分為數(shù)字鍵、換屏鍵、確認(rèn)鍵和選擇鍵。數(shù)字鍵用于鍵入所按的數(shù)字。換屏鍵用于切換屏幕內(nèi)容,進(jìn)入所選中項(xiàng)的鏈接屏幕,若當(dāng)前屏幕沒(méi)有選中項(xiàng),則進(jìn)入首項(xiàng)鏈接的屏幕。選擇鍵主要是使下拉菜單的內(nèi)容顯示到屏幕上來(lái)。確認(rèn)鍵是用于選擇下拉菜單內(nèi)容。
3.2.3主函數(shù)及初始化
該軟件系統(tǒng)主函數(shù)采用的是等待觸摸鍵值的死循環(huán)結(jié)構(gòu)。
4、結(jié)語(yǔ)
本文充分利用OCMJ15x20D以及S3C44BOX內(nèi)置資源,設(shè)計(jì)了ARM處理器控制LCD觸摸屏的軟硬件系統(tǒng),該系統(tǒng)具有可定制特性。它不僅僅能夠方便用戶的對(duì)機(jī)床的操作,而且也使得開發(fā)人員對(duì)界面的修改即對(duì)產(chǎn)品的升級(jí)變得簡(jiǎn)單、快捷。此設(shè)計(jì)為人機(jī)交互系統(tǒng)提供了一種實(shí)際的解決方案,也可應(yīng)用到其他嵌入式系統(tǒng)開發(fā)中。
創(chuàng)新點(diǎn):
1、充分利用S3Cd4BOX的強(qiáng)大功能以及OCMJ15x20D內(nèi)置LCD驅(qū)動(dòng)器資源,完成了LCD觸摸屏的驅(qū)動(dòng),設(shè)計(jì)了S3C44BOX控制彩色顯示屏及四線電阻式觸摸屏組成的人機(jī)交互界面控制系統(tǒng)。
2、操作界面的可定制性使得該軟件系統(tǒng)廣泛用于同類產(chǎn)品設(shè)計(jì)中,同時(shí)也方便開發(fā)人員對(duì)產(chǎn)品進(jìn)行升級(jí)。大大縮短二次軟件開發(fā)的周期。