帶以太網(wǎng)接口的GSM無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計與實現(xiàn)
3.4 串口部分軟件設(shè)計
本系統(tǒng)的GSM無線模塊是通過串行接口與EduKit-III開發(fā)板相連的,該模塊的軟件設(shè)計工作主要遵循GSM無線模塊提供的串行通信協(xié)議來實現(xiàn)短信息的接收和發(fā)送。與GSM無線模塊相關(guān)的串行通信協(xié)議標準有:1位起始位,8位數(shù)據(jù)位,1位停止位,無校驗位,9600b/s波特率。
由于系統(tǒng)已經(jīng)有串口操作的基本函數(shù),本文重點考慮利用中斷方式來實現(xiàn)串口數(shù)據(jù)接收與發(fā)送所涉及的相關(guān)問題,它主要包括串口中斷的初始化和串口數(shù)據(jù)的接收及處理工作。串口中斷的初始化主要包括設(shè)置S344B0X微處理器的中斷模式、使能串口中斷、清除串口中斷標志位和設(shè)置串口中斷的中斷服務(wù)程序。其代碼在這里就不再詳述。串行數(shù)據(jù)接收部分的程序流程圖如9所示。本文引用地址:http://m.butianyuan.cn/article/153671.htm
本程序的設(shè)計思想是:當串口接收到來自GSM模塊的數(shù)據(jù)時,程序首先保護現(xiàn)場,然后判斷FIFO是否為空,若還有數(shù)據(jù),則存入數(shù)據(jù)接收緩沖區(qū),并調(diào)用數(shù)據(jù)處理程序判斷是否收到“OK 0AH 0DH”。如果是,則將數(shù)據(jù)有效標志置為1,否則置為0,同時修改指針,否則說明數(shù)據(jù)已經(jīng)接收完畢,需要進行錯誤處理并恢復(fù)現(xiàn)場后返回。
3.5 液晶顯示模塊軟件設(shè)計
液晶屏(Liquid Crystal Display,LCD)主要用于顯示文本及圖形信息。本系統(tǒng)主要包括ASCII字符、語言文字字符和圖形圖像的顯示。由于ASCII碼字符和漢字字符所使用的點陣是不同的,所以,系統(tǒng)采用了不同的字庫文件,但通過LCD屏幕向用戶顯示提示信息時,難免會同時出現(xiàn)漢字和ASCII字符,比如,“當前溫度:23”。在這種情況下,為了方便程序的處理,需要編寫中英文同時顯示的程序,其程序流程圖如10所示。該顯示程序的設(shè)計思想是:首先獲得字符所需要顯示的區(qū)域(左上角坐標,右下角坐標),然后讀取需要顯示的字符串。如果當前字符為ASCII碼字符,則調(diào)lcd_disp_ascii8x16()函數(shù)顯示,同時指針移1個字符,x坐標加8;否則,連續(xù)讀取2個字符,調(diào)用lcd_disp_hz16()函數(shù)顯示,同時指針移動2個字符,x坐標加16。最后判斷是否需要換行。如此反復(fù)循環(huán),直到所有字符顯示結(jié)束為止。
3.6 觸摸屏模塊的軟件設(shè)計
本系統(tǒng)采用對角線定位方法來確定觸摸屏的原點。觸摸屏的控制程序軟件包括觸摸屏中斷的初始化、觸摸屏定位、用戶動作響應(yīng)等。
觸摸屏中斷的初始化工作主要包括設(shè)置S344B0X微處理器的中斷模式、使能觸摸屏所對應(yīng)的外部中斷、清除外部中斷標志位和設(shè)置觸摸屏中斷的中斷服務(wù)程序。
觸摸屏定位部分的功能是獲得用戶輸入的坐標,主要包括A/D轉(zhuǎn)換、坐標計算、坐標存儲等。其程序流程圖如圖11所示。
4 結(jié)語
本文針對當前遠程控制系統(tǒng)存在的問題進行了分析和研究,給出了帶以太網(wǎng)接口的、基于GSM的無線數(shù)據(jù)傳輸系統(tǒng)的總體設(shè)計方案,并對系統(tǒng)涉及的軟硬件技術(shù)進行了詳細介紹,最后在此基礎(chǔ)上完成了系統(tǒng)設(shè)計和系統(tǒng)實現(xiàn)。本系統(tǒng)具有技術(shù)先進、系統(tǒng)互聯(lián)、遠程監(jiān)控、性價比高、升級容易、擴展性強等優(yōu)點,對提高遠程監(jiān)控的數(shù)據(jù)傳輸效率及降低監(jiān)控系統(tǒng)的運營成本具有重要的意義,值得進一步研究與推廣。
評論