摘要:本文根據(jù)煤礦井下饋電開關(guān)智能綜合保護(hù)器顯示的要求,,利用8031單片機(jī)和MGLS-12864液)晶顯示模塊實(shí)現(xiàn)保護(hù)器顯示部分的軟硬件設(shè)計(jì)。通過搭建硬件電路,,編譯調(diào)試下栽程序,,使用8031單片機(jī)控制MGLS-12864液晶顯示模塊,可以實(shí)現(xiàn)漢字,、數(shù)字和字母的顯示以及光標(biāo)閃爍和實(shí)時(shí)數(shù)據(jù)顯示等功能,,此功能除可用于煤礦井下饋電開關(guān)智能綜合保護(hù)器顯示,還可用于智能化儀器儀表等需要顯示的場(chǎng)合,。
隨著液晶顯示技術(shù)的發(fā)展和儀表智能化程度的提高,,人們對(duì)信息顯示方式的要求也在不斷提高,傳統(tǒng)的數(shù)字顯示已經(jīng)不能表達(dá)復(fù)雜的信息,。而液晶顯示器(LCD)則以其重量輕,、電壓低、功耗小,、顯示內(nèi)容豐富等優(yōu)點(diǎn)逐漸在單片機(jī)控制的智能儀器儀表,、工業(yè)控制等領(lǐng)域得到廣泛應(yīng)用。
礦用隔爆饋電開關(guān)是煤礦井下配電系統(tǒng)的關(guān)鍵設(shè)備,,其性能好壞直接影響煤礦井下的生產(chǎn)安全和生產(chǎn)效率,。目前大部分礦井饋電開關(guān)保護(hù)器的顯示通常是發(fā)光二極管或LED數(shù)字顯示,并且大部分用燈來顯示故障,。
為了改進(jìn)饋電開關(guān)的顯示功能,,利用單片機(jī)8031和液晶顯示器設(shè)計(jì)了一種具有漢字顯示功能的顯示系統(tǒng),該系統(tǒng)能夠通過液晶顯示器實(shí)時(shí)顯示開關(guān)的工作參數(shù)(電壓,、電流等),、工作狀態(tài)、供電線路的故障原因以及故障所發(fā)生的時(shí)間等,,并且能對(duì)故障狀態(tài)進(jìn)行存儲(chǔ),,大大方便了線路的維修,。
1 系統(tǒng)的硬件構(gòu)成
為了完成饋電開關(guān)的各種顯示,采用8031單片機(jī)控制MGLS-12864液晶顯示模塊,。饋電開關(guān)保護(hù)器要求顯示開關(guān)的工作狀態(tài),、工作參數(shù)(電壓、電流,、功率因數(shù)等),、故障原因、故障狀態(tài)和瓦斯報(bào)警等,。
1.1 點(diǎn)陣式液晶顯示模塊MGLS-12864
MGLS-12864是香港信利公司生產(chǎn)的點(diǎn)陣圖形式液晶顯示模塊,,點(diǎn)陣數(shù)為64行x128列,每屏可以顯示4行×8個(gè)漢字(每漢字16×16點(diǎn)陣),。該顯示模塊有2片HD61202作為列驅(qū)動(dòng)器和1片HD61203作為行驅(qū)動(dòng)器,,可顯示64K的點(diǎn)陣圖形。其主要特點(diǎn)是能與80系列微處理器直接接口,,可以進(jìn)行圖形,、字符及圖形和字符混合3種方式顯示,并具有64K的內(nèi)部存儲(chǔ)器,。顯示屏共分8頁,,顯示數(shù)據(jù)格式及顯示屏的頁、行和列的分布情況如表1所示,。
該表結(jié)合時(shí)序圖對(duì)于理解HD61202液晶控制器的七種顯示指令很有幫助,。這七種指令的功能如表2所示,HD61202的讀寫時(shí)序圖如圖1所示,。
1.2 硬件接口
8031單片機(jī)與液晶顯示模塊MGLS-12864有2種連接方式:直接訪問方式,、間接控制方式。本設(shè)計(jì)采用間接控制方式,。系統(tǒng)硬件接口圖如圖2所示,。
在圖2中,根據(jù)圖1讀寫時(shí)序要求,,8031的P1.2作為液晶顯示模塊的RS控制信號(hào)決定單片機(jī)是進(jìn)行數(shù)據(jù)選擇還是進(jìn)行指令選擇,,RS=1,數(shù)據(jù)操作,;RS=0,,寫指令或讀狀態(tài)操作;P1.3接R/W選擇信號(hào),,決定單片機(jī)對(duì)顯示模塊是進(jìn)行讀選通還是寫選通;P1.4接使能信號(hào)E決定數(shù)據(jù)是被鎖存寫入還是被讀出:P1.1和P1.0接CS1和CS2根據(jù)寫入的數(shù)據(jù)決定片選:P0端口接MGLS-12864的DB0~DB7用于二者之間的數(shù)據(jù)傳送,;通過上位機(jī)和8031的串口通訊方式將開關(guān)的實(shí)時(shí)數(shù)據(jù)和狀態(tài)等送給顯示系統(tǒng)進(jìn)行顯示,。
2 系統(tǒng)的軟件設(shè)計(jì)
系統(tǒng)程序主要由主程序,、子程序和中斷服務(wù)程序組成。主程序流程圖如圖3所示,。在主程序中,,首先判斷顯示控制器HD61202是否處于“忙”狀態(tài),若不忙先送關(guān)顯示指令關(guān)閉所有顯示,,接著仍判斷“忙”狀態(tài),,若不忙送開顯示指令,為顯示做準(zhǔn)備,,然后調(diào)清全屏子程序,、漢字顯示子程序,最后根據(jù)內(nèi)容需要調(diào)清單個(gè)字子程序,。漢字顯示子程序如圖4所示,。在初始化中首先設(shè)定幾個(gè)參數(shù):顯示的是第幾個(gè)字、頁地址,、所在列地址Firstcolum,。接著根據(jù)輸入的列進(jìn)行片選,左右屏漢字顯示程序一樣,,都是先調(diào)寫指令子程序然后調(diào)寫程序子程序,。依次循環(huán)寫入,最后判斷這個(gè)字是否寫完,。其他子程序如:初始化子程序,、寫指令子程序、寫數(shù)據(jù)子程序,、清顯示子程序,,篇幅有限從略。在漢字顯示子程序中,,首先讀取的是前16個(gè)字節(jié)為上半部16x8點(diǎn)陣字模數(shù)據(jù),,后讀取的是后16字節(jié),為下半部16x8點(diǎn)陣字模數(shù)據(jù),。
3 調(diào)試中遇到的問題
1)由于MGLS-12864液晶顯示模塊沒有字符庫,,首先對(duì)要顯示的漢字、數(shù)字,、字母等通過字模提取軟件——zimo0221取模,,將取模方式設(shè)成C51方式可得到一個(gè)漢字的16x16的點(diǎn)陣數(shù)據(jù)。
2)在NGLS-12864中,,2片HD61202的ADC均接高電平,,RST也接高電平,這樣在使用NGLS-12864時(shí)就不必考慮這兩個(gè)引腳的作用。
3)RAM中的每一個(gè)字節(jié)(8位)對(duì)應(yīng)LCD屏上一行中的一列,,一個(gè)字節(jié)中的一位對(duì)應(yīng)LCD屏上一個(gè)點(diǎn)(“0”為滅“1”為亮),,在清除一列時(shí),在要被清除的列的位置寫入“00H”,,用此方法可以清除屏上的一個(gè)區(qū)域或全屏,。
4)實(shí)驗(yàn)中滿足時(shí)序是非常重要的,如果時(shí)序錯(cuò)誤就不能進(jìn)行正常顯示,。
4 結(jié)束語
本文介紹利用8031單片機(jī)控制NGLS-12862液晶顯示模塊的軟硬件設(shè)計(jì),。通過實(shí)踐,顯示系統(tǒng)完成了漢字,、數(shù)字和字母的顯示以及光標(biāo)閃爍和實(shí)時(shí)數(shù)據(jù)顯示等功能,。這個(gè)設(shè)計(jì)不僅能用于煤礦井下饋電開關(guān)智能綜合保護(hù)器顯示,還可用于智能化儀器儀表等需要顯示的場(chǎng)合,。