基于GPRS的大屏幕LED顯示系統(tǒng)的設(shè)計(jì)
下位機(jī)程序設(shè)計(jì)主要由兩個(gè)部分構(gòu)成: (1)GPRS 的發(fā)送單元的程序設(shè)計(jì), 該單元把上位機(jī)處理好的顯示信息及時(shí)準(zhǔn)確地傳到遠(yuǎn)程的終端控制單元; (2) 終端控制單元的程序設(shè)計(jì), 該單元主要完成接收GPRS 發(fā)送過來的信息然后把數(shù)據(jù)分割后傳給各個(gè)顯示終端。本文主要介紹第二部分的程序設(shè)計(jì)。
該下位機(jī)軟件設(shè)計(jì)包括主程序、顯示子程序和通信服務(wù)程序的設(shè)計(jì)。主程序主要完成中斷的初始化和串口的初始化設(shè)置。顯示程序主要完成數(shù)據(jù)的各種顯示, 顯示部分采用動(dòng)態(tài)掃描的方式, 實(shí)現(xiàn)對(duì)顯示屏要顯示的漢字、圖像、字符等數(shù)據(jù)信息進(jìn)行傳輸控制以及顯示等功能。通信服務(wù)程序主要完成GPRS 的數(shù)據(jù)接收、數(shù)據(jù)的分割處理、數(shù)據(jù)的發(fā)送等任務(wù)。本文采用模塊化程序設(shè)計(jì), 程序各部分的功能由各個(gè)模塊分別實(shí)現(xiàn)。程序模塊有: 系統(tǒng)初始化模塊、GPRS 通信模塊、數(shù)據(jù)的處理和存儲(chǔ)模塊、I2C 通信模塊。為了保證系統(tǒng)工作的實(shí)時(shí)性和高效性, 本系統(tǒng)采用了實(shí)用單片機(jī)系統(tǒng)MS3 ,MS3 是一套針對(duì)MCU51 的開發(fā)平臺(tái), 借簽了VC 編程的消息機(jī)制,把各個(gè)功能有效地組織起來。RTOS 的系統(tǒng)時(shí)鐘, 實(shí)現(xiàn)高效的按鍵掃描和快速的響應(yīng)中斷, 執(zhí)行例行程序。顯示終端主程序如圖4 所示。
圖4 顯示終端主程序流程圖
GPRS 通信模塊主要的功能是接收到GPRS 發(fā)送模塊的信息,然后從外面的Flash 中查詢相應(yīng)的代碼,然后在顯示終端顯示信息,顯示屏可按不同顯示方式進(jìn)行漢字或表格顯示。GPRS 接收模塊設(shè)計(jì)程序的流程圖如圖5 所示。
圖5 GPRS 接收模塊設(shè)計(jì)程序流程圖
3.2 上位機(jī)管理軟件設(shè)計(jì)
在基于GPRS 的LED 的顯示系統(tǒng)中, 上位機(jī)機(jī)管理軟件主要負(fù)責(zé)文本信息的編輯, 對(duì)顯示的數(shù)據(jù)根據(jù)TEXT 或PDU 模式進(jìn)行編碼, 然后通過GSM 的發(fā)送模塊把信息發(fā)送出去。上位機(jī)軟件使用可視化編程工具VisualC++6.0 開發(fā), 首先根據(jù)LED 顯示屏的大小設(shè)置上位機(jī)文字和圖像處理的尺寸, 然后對(duì)輸入的數(shù)據(jù)和圖像進(jìn)行編輯, 最后把提取有用的數(shù)據(jù)通過通信接口傳給下位機(jī)。在通信的過程中為了保證應(yīng)用的廣泛性,PC 機(jī)的控制系統(tǒng)中采用了Microsoft Visual C++6.0 開發(fā)工具中非常好用的多線程串口編程工具CSerialPort 類, 與自帶的MSComm 控件相比, 這個(gè)類打包的時(shí)候不需要加入其他的文件,而且函數(shù)都是開放透明的允許用戶改造。
通過終端處理單元可以接收GPRS 模塊發(fā)送的數(shù)據(jù), 然后將數(shù)據(jù)通過I2C總線傳給各個(gè)顯示終端。終端顯示采用串行移位輸出方式可以實(shí)現(xiàn)一組字符的各種預(yù)定模式顯示。本電路可擴(kuò)展實(shí)現(xiàn)由30 多個(gè)160×16 點(diǎn)陣LED 模塊組成的LED電子顯示屏顯示控制。經(jīng)實(shí)際應(yīng)用表明, 該電路穩(wěn)定可靠, 效果良好, 具有一定的實(shí)用價(jià)值。但是本設(shè)計(jì)所用的控制卡只能控制顯示屏的單色顯示, 如果能顯示雙色, 甚至三色那就更方便了。如何使LED 顯示屏可以顯示變化的數(shù)字、文字、圖形圖像, 甚至視頻, 這需要在數(shù)據(jù)的存儲(chǔ)和處理算法方面進(jìn)一步研究。
評(píng)論