基于BP電梯控制系統的液晶顯示漢化的開(kāi)發(fā)
關(guān)鍵詞:漢化 電梯控制系統 液晶顯示
1 引言?
本文所介紹的開(kāi)發(fā)依托于德國奔克公司BP電梯控制系統,該控制系統的顯示器采用HD44780字符型液晶顯示模塊,顯示界面語(yǔ)言采用英語(yǔ)。為了方便在中國的各類(lèi)電梯用戶(hù),因而開(kāi)發(fā)了這個(gè)漢化系統,用OCMJ4X8中文液晶顯示模塊替代HD44780字符型液晶顯示模塊,并將界面語(yǔ)言改為中文。
??
2 OCMJ4X8中文液晶顯示模塊?
該模塊的最大特點(diǎn)是它自帶常用的一級漢字中文字庫,用戶(hù)只要向液晶模塊輸入漢字的區位碼就能在液晶屏上顯示漢字;而且它和計算機的接口時(shí)序也非常的簡(jiǎn)潔,節省了計算機執行指令的時(shí)間。因此,OCMJ 4X8中文液晶顯示模塊是進(jìn)行中文顯示的最佳選擇。?
OCMJ 4X8的接口協(xié)議為ASK/ANSWER握手方式。ASK=1表示OCMJ忙于內部處理,不能接受用戶(hù)命令;ASK=0后表示OCMJ空閑等待接收用戶(hù)命令。??
3 AVR單片機――AT90S8515?
在開(kāi)發(fā)中我們采用了ATMEL公司的90系列增強RISC內載Flash的單片機AT90S8515。AVR系列單片機與MCS51系列單片機相比,由于它的寄存器文件由32個(gè)通用工作寄存器組成,從而消除了在MCS51系列單片機中單一累加器A傳輸數據的瓶頸現象,從而避免了基于累加器的結構而需要大量程序代碼。AVR單片機采用了Havard結構,在前一條指令執行的時(shí)候,就取出現行的指令,然后以一個(gè)周期執行指令,每MHz可實(shí)現1MPIS的處理能力。在其它的CISC以及類(lèi)似的RISC結構中,外部振蕩器的時(shí)鐘被分頻降低到傳統的內部執行周期,這種分頻最大達12倍。AVR單片機是用一個(gè)時(shí)鐘周期執行一條指令的,因此它是在8位單片機中的一種真正的RISC單片機。??
4 HD44780液晶顯示模塊?
HD44780液晶顯示模塊屬于字符型液晶顯示模塊,專(zhuān)用于顯示字母、數字、符號等的字符型液晶顯示模塊。它的每一行有20個(gè)顯示位,總共有四行,每個(gè)字符為5X7點(diǎn)陣。該模塊的接口時(shí)序為M6800時(shí)序,其特點(diǎn)是讀寫(xiě)操作時(shí)序是由使能信號E完成的,E信號是正脈沖信號,不操作時(shí)為低電平狀態(tài),操作時(shí)產(chǎn)生一個(gè)正脈沖。HD44780接口的主要引腳如下:?
DB7~DB4 三態(tài) 8位數據總線(xiàn)的高4位或4位數據總線(xiàn)。?
DB3~DB0 三態(tài) 8位數據總線(xiàn)的低4位。?
RS 輸入 寄存器選擇信號。?
R/W 輸入 讀/寫(xiě)選擇信號。?
E 輸入 使能信號。?
HD44780接口部信號端的邏輯功能組合表如下所示:?
表中“1”代表高電平;“0”代表低電平;“downedge”代表下降沿。?
表格中的BF為液晶模塊和計算機的握手信號,當BF=1時(shí),計算機對液晶模塊不能進(jìn)行任何操作,此時(shí)液晶模塊正在進(jìn)行內部操作;只有當BF=0時(shí),計算機才可以向液晶模塊進(jìn)行讀寫(xiě)操作。標中的AC為液晶模塊的地址指針計數器,它能夠反映出顯示屏上當前的光標位置,其實(shí)光標的當前位置就是液晶模塊內部的DDRAM地址。HD44780液晶顯示模塊共有8條指令。?
5 硬件設計?
硬件框圖右圖所示:
開(kāi)發(fā)的最終目的是要將HD44780從BP系統上取消,而只利用它們之間的接口。由于BP電梯控制系統內嵌的軟件僅支持英文液晶顯示器HD44780的指令系統。因此,必須開(kāi)發(fā)一塊硬件接口板,截獲BP控制系統發(fā)送來(lái)的英文信息,并使該接口板支持中文液晶顯示模塊OCMJ4X8的指令系統。該接口板服務(wù)與硬件框圖中的“信號采集處理系統”的部分。在系統開(kāi)發(fā)時(shí),我們對控制系統的內嵌軟件是未知的。因此,接口板不僅扮演了HD44780的角色,還肩負著(zhù)信號采集處理的重任,對采集到的信息經(jīng)處理后轉換成中文信息,隨后用OCMJ的指令系統將其輸出到中文液晶顯示模塊,所以整個(gè)系統就包括BP控制系統的信息源、信息采集和處理系統、中文菜單存儲系統、中文顯示系統四個(gè)部分。具體的電路如圖二所示。圖中74LS273芯片用來(lái)鎖存BP發(fā)送過(guò)來(lái)的信息;74LS373用來(lái)反饋忙信息,當BP處于讀狀態(tài)時(shí),由E信號和W/R信號聯(lián)合控制選通74LS373,給BP控制系統反饋忙標志信號;單片機AT90S8515是信息采集和處理中心;EPROM 27512存儲有大量的中文菜單信息;數據串行輸入74LS164,并從其并行口將數據送往OCMJ4X8中文液晶顯示模塊進(jìn)行顯示,移位脈沖由軟件產(chǎn)生。
6 軟件設計?
程序框圖如圖3所示:?
編制程序的難點(diǎn)在于兩個(gè)方面。難點(diǎn)之一是采用什么方式觸發(fā)單片機采集BP向HD44780寫(xiě)入的數據。當在BP系統的控制面板上進(jìn)行按鍵操作時(shí),BP就會(huì )與HD44780進(jìn)行信息交換。采用查詢(xún)方式時(shí),是對BP控制系統發(fā)送過(guò)來(lái)的使能信號E進(jìn)行查詢(xún),當E信號為高電平時(shí),說(shuō)明BP對HD44780進(jìn)行讀寫(xiě)操作,于是程序進(jìn)入讀寫(xiě)操作的判別。如果是讀操作,則程序必須反饋給BP忙標志BF值;如果是寫(xiě)操作,則必須采集接口數據總線(xiàn)上的值(讀操作或寫(xiě)操作由W/R信號線(xiàn)區別)。這時(shí)必須給CPU設定查詢(xún)時(shí)間,根據實(shí)際按鍵操作特點(diǎn),CPU總的查詢(xún)時(shí)間設定為約100ms。這樣CPU每隔約100ms查詢(xún)一次,若沒(méi)有采集到使能信號E為高電平,則置出錯標志,CPU轉而執行其它的任務(wù)。但程序的實(shí)際運行狀況看,系統不能完整的采集到所有BP發(fā)送過(guò)來(lái)的數據。故查詢(xún)方式不能被采用。另外一種觸發(fā)方式就是中斷,利用使能信號E的高電平觸發(fā)中斷INT1。實(shí)際應用表明中斷方式能完全采集到數據,實(shí)際上也正是利用了中斷的靈活性。在編制中斷子程序時(shí),主要考慮了中斷子程序最多能完成的任務(wù)量,否則會(huì )影響數據采集的完整性。在試驗中發(fā)現,中斷子程序最多只能完成對AVR單片機I/O口的數據采集和數據保存的工作。難點(diǎn)之二是表格的編制。由于電梯的菜單多達上千句,為了能得到最短的查表時(shí)間,以達到數據采集、轉換、顯示的緊密配合,否則會(huì )導致OCMJ中文顯示跟不上BP上按鍵操作要求更改屏幕顯示信息的要求,所以精心構造查表程序。由于篇幅限制,具體程序略。??
7 抗干擾設計?
采用了軟件和硬件兩方面的抗干擾措施。由于A(yíng)VR單片機本身就具有看門(mén)狗電路,所以在軟件編制時(shí),在軟件中加入看門(mén)狗復位。一但程序由于干擾進(jìn)入混亂狀態(tài),就可以利用看門(mén)狗進(jìn)行程序復位;另外一個(gè)就是利用軟件濾波;再一個(gè)就是保護中斷現場(chǎng)。硬件抗干擾措施主要是在設計印刷電路板時(shí)考慮抗干擾。地線(xiàn)設計時(shí)將地線(xiàn)加粗、將地線(xiàn)構成閉環(huán)路;對易受干擾地信號線(xiàn)與信號源之間加入地線(xiàn)屏蔽;對印刷板入口處地電源線(xiàn)和地線(xiàn)之間并接退耦電容;集成芯片上加去耦電容,電容值可取0.01μf。??
8 結論?
帶來(lái)本系統給操作、調試、維護人員提供了方便易讀的中文電梯控制系統菜單,使他們可以正確而快速地進(jìn)行電梯參數設置和故障分析,提高調試的安全性、可靠性;縮短了調試時(shí)間,提高了工作效率。??
參考文獻?
[1]王幸之,王雷,等編著(zhù).單片機應用系統抗干擾技術(shù)[M].北京航空航天大學(xué)出版社 2000年2月第一版?
[2]宋建國主編.AVR單片機原理及應用[M].1998年10月第一版北京航空航天大學(xué)出版社?
[3]李維提,郭強編著(zhù).液晶顯示應用技術(shù)[M].2000年3月第一版電子工業(yè)出版社
[4]肇慶市奧可拉液晶顯示器有限公司[S].OCMJ系列中文液晶顯示模塊說(shuō)明書(shū)
評論