基于GR47和MCU的無線嵌入式Web Server
引言
本文引用地址:http://cafeforensic.com/article/152089.htm嵌入式Web Server具有靈活性、前沿性和解決問題的有效性等優(yōu)點,在網(wǎng)絡(luò)智能設(shè)備中發(fā)揮著越來越重要的作用。本文依托GPRS(通用分組無線電業(yè)務(wù))網(wǎng)絡(luò)來實現(xiàn)嵌入式Web Server的方法,實現(xiàn)了遠程無線接人嵌入式Web Server。
嵌入式Web Server是一個簡單易用的網(wǎng)絡(luò)服務(wù)器,用戶可通過IE訪問服務(wù)器的IP看到Web頁面。嵌入式Web Server的原理是把Web Server作為一個數(shù)據(jù)載體,Web Server監(jiān)聽用戶端的服務(wù)請求,根據(jù)用戶請求類型提供相應(yīng)的服務(wù),用戶端使用Web瀏覽器和Web服務(wù)器進行通信。Web服務(wù)器在接收到用戶端請求后,處理用戶請求并返回需要的數(shù)據(jù),一個完整的HTYP服務(wù)一般由以下幾個階段組成:客戶和服務(wù)器建立TCP連接;客戶向服務(wù)器發(fā)送請求;如果請求被接收,則服務(wù)器發(fā)送應(yīng)答,在應(yīng)答中包含狀態(tài)碼和所要的文件;客戶和服務(wù)器關(guān)閉連接。嵌入式Web Serv-er可將本地的信息和數(shù)據(jù)通過網(wǎng)絡(luò)傳遞給遠端發(fā)出請求的客戶,這對遠程監(jiān)控的實現(xiàn)很有意義。
GPRS是在現(xiàn)有的GSM(全球移動通信系統(tǒng))網(wǎng)絡(luò)的基礎(chǔ)上增加一些硬件設(shè)備和進行軟件升級而形成的一個新的網(wǎng)絡(luò)邏輯實體,它是GSM Phase2+規(guī)范實現(xiàn)的內(nèi)容之一,是基于GSM的移動分組數(shù)據(jù)業(yè)務(wù),支持IP協(xié)議和X.25協(xié)議。具有永遠在線、快速登錄、按量計費、切換自如、高速傳送、安全可靠等優(yōu)點。每一個移動臺登錄GPRS網(wǎng)絡(luò)后均會被GPRS服務(wù)器分配一個IP地址。通過此IP地址和對應(yīng)端口即可訪問位于GPRS網(wǎng)絡(luò)上的嵌入式Web Server。
無線嵌入式Web Server在不需布線的情況下可以實現(xiàn)無線互聯(lián),并兼有Web的友好界面,實現(xiàn)GPRS在HTTP應(yīng)用層上通信,方便二次開發(fā)和平臺移植。
1無線嵌人式Web Server
目前中國移動GPRS網(wǎng)絡(luò)路由分配給移動臺的是內(nèi)部IP,所以只能實現(xiàn)路由內(nèi)部局域網(wǎng)的訪問,即由一臺通過GPRS Modem上網(wǎng)的MCU來訪問嵌入式Web Server,系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1。
1.1 GR47 GPRS模塊
Sony Ericsson公司提供的具有內(nèi)置YCP/IP協(xié)議棧的GR47模塊,其功能強大,使用方便,性能穩(wěn)定,具有良好的技術(shù)服務(wù)支持,性價比高,向用戶提供了標準的AT命令接口和豐富的AT指令集,用戶可以很方便地將其集成到各種數(shù)據(jù)終端之中。它的優(yōu)勢是始終保持在線連接、數(shù)據(jù)傳輸快速穩(wěn)定,具備快速GPRS技術(shù),根據(jù)實際測試,掉線概率非常小。
使用AT命令操作GR47建立和斷開一個TCP/IP會話的步驟如下:
a)定義一個PDP上下文:
AT+CGDCONT=1,IP,CMNETCR>=>OK
b)激活已定義的PDP上下文:
AT*E2IPA=1.1CR>=>OK
c)查詢模塊和移動GPRS服務(wù)器的IP地址:
AT*E2IPI=0CR>=>*E2IPI:10.165.192.25
AT*E2IPI=1CR>=>*E2IPI:211.137.64.163
d)監(jiān)聽80端口,模塊處于在線數(shù)據(jù)狀態(tài)AT*E2IPL1=80,1,50,1
e)設(shè)置DTR低電平(TTL)并延遲一段時間。置高=>OK,此時模塊將返回在線命令狀態(tài)。
f)返回在線數(shù)據(jù)狀態(tài):
ATOCR>=>OK
g)將DTR線置低,延遲再置高,重新返回到在線命令狀態(tài)。
h)返回在線命令狀態(tài)后斷開IP連接:
AT*E2IPA=0.1CR>=>OK
AT*E2IPCCR>=>OK
GR47登錄GPRS網(wǎng)絡(luò)后,使用AT*E2IPL命令設(shè)置監(jiān)聽80端口,等待客戶端HTTP連接。
1.2嵌入式Web Server的實現(xiàn)
GPRS模塊GR47集成了TCP/IP協(xié)議,并且可以通過監(jiān)聽指令得到80端口數(shù)據(jù),所以只需在MCU中軟件實現(xiàn)HTTP協(xié)議,解析HTTP數(shù)據(jù)后,即可實現(xiàn)HTTP連接。MCU采用TI公司的MSP430F149單片機,它是16位超低功耗、高性能的混合信號處理器,具有處理能力強、運行速度快、資源豐富、開發(fā)方便等優(yōu)點,具有很高的性價比。
硬件結(jié)構(gòu)框圖見圖2,F(xiàn)lash存儲器用來存儲頁面和圖片等固化資源,MCU與GR47通過串口通信。
1.3客戶端訪問Web Server的實現(xiàn)
目前,中國移動GPRS對移動終端分配的是動態(tài)局域網(wǎng)IP,以武漢市為例,GR47通過AT指令查詢模塊和移動GPRS服務(wù)器的IP地址為:
AT*E2IPI=0CR>=>*E2IPI:10.165.192.25
AT*E2IPI=1CR>=>*E2IPI:211.137.64.163
模塊獲得IP后,需通過其他方式來通知客戶端(PC或可以連接GPRS的移動設(shè)備),以短信或向一臺固定IP的PC機通知客戶端模塊獲得的IP,客戶端可以通過此IP連接遠端的Web Server。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論