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