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