摘要:本文根據(jù)煤礦井下饋電開關(guān)智能綜合保護器顯示的要求,,利用8031單片機和MGLS-12864液晶顯示模塊實現(xiàn)保護器顯示部分的軟硬件設(shè)計,。通過搭建硬件電路,,編譯調(diào)試下栽程序,使用8031單片機控制MGLS-12864液晶顯示模塊,,可以實現(xiàn)漢字,、數(shù)字和字母的顯示以及光標閃爍和實時數(shù)據(jù)顯示等功能,此功能除可用于煤礦井下饋電開關(guān)智能綜合保護器顯示,,還可用于智能化儀器儀表等需要顯示的場合,。
關(guān)鍵詞:單片機;液晶顯示模塊;接口;漢字顯示
隨著傳統(tǒng)的數(shù)字顯示已經(jīng)不能表達復(fù)雜的信息。而液晶顯示器(LCD)則以其重量輕,、電壓低,、功耗小、顯示內(nèi)容豐富等優(yōu)點逐漸在單片機控制的智能儀器儀表,、工業(yè)控制等領(lǐng)域得到廣泛應(yīng)用,。
礦用隔爆饋電開關(guān)是煤礦井下配電系統(tǒng)的關(guān)鍵設(shè)備,其性能好壞直接影響煤礦井下的生產(chǎn)安全和生產(chǎn)效率,。目前大部分礦井饋電開關(guān)保護器的顯示通常是發(fā)光二極管或LED數(shù)字顯示,,并且大部分用燈來顯示故障,。
為了改進饋電開關(guān)的顯示功能,,利用單片機8031和液晶顯示器設(shè)計了一種具有漢字顯示功能的顯示系統(tǒng),該系統(tǒng)能夠通過液晶顯示器實時顯示開關(guān)的工作參數(shù)(電壓,、電流等),、工作狀態(tài)、供電線路的故障原因以及故障所發(fā)生的時間等,并且能對故障狀態(tài)進行存儲,,大大方便了線路的維修,。
1 系統(tǒng)的硬件構(gòu)成
為了完成饋電開關(guān)的各種顯示,采用8031單片機控制MGLS-12864液晶顯示模塊,。饋電開關(guān)保護器要求顯示開關(guān)的工作狀態(tài),、工作參數(shù)(電壓、電流,、功率因數(shù)等),、故障原因、故障狀態(tài)和瓦斯報警等,。
1.1 點陣式液晶顯示模塊MGLS-12864
MGLS-12864是香港信利公司生產(chǎn)的點陣圖形式液晶顯示模塊,,點陣數(shù)為64行x128列,每屏可以顯示4行×8個漢字(每漢字16×16點陣),。該顯示模塊有2片HD61202作為列驅(qū)動器和1片HD61203作為行驅(qū)動器,,可顯示64 K的點陣圖形。其主要特點是能與80系列微處理器直接接口,,可以進行圖形,、字符及圖形和字符混合3種方式顯示,并具有64 K的內(nèi)部存儲器,。顯示屏共分8頁,,顯示數(shù)據(jù)格式及顯示屏的頁、行和列的分布情況如表1所示,。

該表結(jié)合時序圖對于理解HD61202液晶控制器的七種顯示指令很有幫助,。這七種指令的功能如表2所示,HD61202的讀寫時序圖如圖1所示,。

1.2 硬件接口
8031單片機與液晶顯示模塊MGLS-12864有2種連接方式:直接訪問方式,、間接控制方式。本設(shè)計采用間接控制方式.系統(tǒng)硬件接口圖如圖2所示,。

在圖2中,,根據(jù)圖1讀寫時序要求,8031的P1.2作為液晶顯示模塊的RS控制信號決定單片機是進行數(shù)據(jù)選擇還是進行指令選擇,,RS=1,,數(shù)據(jù)操作;RS=0,寫指令或讀狀態(tài)操作;P1.3接R/W選擇信號,,決定單片機對顯示模塊是進行讀選通還是寫選通;P1.4接使能信號E決定數(shù)據(jù)是被鎖存寫入還是被讀出:P1.1和P1.0接CS1和CS2根據(jù)寫入的數(shù)據(jù)決定片選:P0端口接MGLS-12864的DB0~DB7用于二者之間的數(shù)據(jù)傳送;通過上位機和8031的串口通訊方式將開關(guān)的實時數(shù)據(jù)和狀態(tài)等送給顯示系統(tǒng)進行顯示,。
2 系統(tǒng)的軟件設(shè)計

系統(tǒng)程序主要由主程序、子程序和中斷服務(wù)程序組成,。主程序流程圖如圖3所示,。在主程序中,,首先判斷顯示控制器HD61202是否處于“忙”狀態(tài),若不忙先送關(guān)顯示指令關(guān)閉所有顯示,,接著仍判斷“忙”狀態(tài),,若不忙送開顯示指令,為顯示做準備,,然后調(diào)清全屏子程序,、漢字顯示子程序,最后根據(jù)內(nèi)容需要調(diào)清單個字子程序,。漢字顯示子程序如圖4所示,。在初始化中首先設(shè)定幾個參數(shù):顯示的是第幾個字、頁地址,、所在列地址Firstcolum,。接著根據(jù)輸入的列進行片選,左右屏漢字顯示程序一樣,,都是先調(diào)寫指令子程序然后調(diào)寫程序子程序,。依次循環(huán)寫入,最后判斷這個字是否寫完,。其他子程序如:初始化子程序,、寫指令子程序、寫數(shù)據(jù)子程序,、清顯示子程序,,篇幅有限從略。在漢字顯示子程序中,,首先讀取的是前16個字節(jié)為上半部16x8點陣字模數(shù)據(jù),,后讀取的是后16字節(jié),為下半部16x8點陣字模數(shù)據(jù),。
3 調(diào)試中遇到的問題
1)由于MGLS-12864液晶顯示模塊沒有字符庫,,首先對要顯示的漢字、數(shù)字,、字母等通過字模提取軟件——zimo0221取模,,將取模方式設(shè)成C51方式可得到一個漢字的16x16的點陣數(shù)據(jù)。
2)在NGLS-12864中,,2片HD61202的ADC均接高電平,,RST也接高電平,這樣在使用NGLS-12864時就不必考慮這兩個引腳的作用,。
3)RAM中的每一個字節(jié)(8位)對應(yīng)LCD屏上一行中的一列,,一個字節(jié)中的一位對應(yīng)LCD屏上一個點(“0”為滅“1”為亮),在清除一列時,,在要被清除的列的位置寫入“00H”,,用此方法可以清除屏上的一個區(qū)域或全屏,。
4)實驗中滿足時序是非常重要的,,如果時序錯誤就不能進行正常顯示,。
4 結(jié)束語
通過實踐,顯示系統(tǒng)完成了漢字,、數(shù)字和字母的顯示以及光標閃爍和實時數(shù)據(jù)顯示等功能,。這個設(shè)計不僅能用于煤礦井下饋電開關(guān)智能綜合保護器顯示,還可用于智能化儀器儀表等需要顯示的場合,。