
圖3 PPP報文解析
5 登錄GGSN的過程
系統的一個難點是微控制器登陸GPRS網關(GGSN)并與網關通過LCP、PAP、IPCP協議進行協商的過程。LCP、PAP與IPCP協議的幀結構大同小異,最常用的為請求(REQ)、同意(ACK)和拒絕(NAK)三種幀。微控制器與GGSN各為一方進行協商,任何一方都可以發送REQ幀請求某方面的配制,另一方覺得配置不能接受會回應NAK幀,如果可以則回應ACK幀。為了節省資源,我們只處理這三種數據幀,其它鏈路問題都由微控制器在程序控制下自己重新撥號解決。
協商過程大致描述如下:在撥號成功連接后,GGSN首先會返回一個PAP REQ數據幀。我們發送一個空LCP REQ幀,以強迫進行協議協商階段。隨后,GGSN發送LCP設置幀,我們拒絕所有的設置并請求驗證模式。GGSN選擇CHAP或PAP方式驗證,我們只接受PAP方式。然后,進行PAP驗證用戶名和密碼過程,在GPRS中用戶名與密碼都為空,如果成功,GGSN會返回IPCP報文分配動態IP地址。此時,就完成了與GGSN的協商過程。協商過程的狀態轉換如圖4所示。

圖4 協商過程流程
協商完成后進入IP數據報通信階段。此時,微控制器向GGSN發送的所有包含IP報文的PPP報文都會被傳送給Internet網中相應的IP地址;而遠端所有向微控制器IP地址發送的報文也都會經GPRS網傳送到微控制器上,從而完成微控制器與遠程主機通過互聯網的數據傳輸。
注:PPP報文解析程序和協商過程程序見本刊網站www.dpj.com.cn。
6 小結
經過優化,本系統的軟件代碼可以精簡到6K字節左右,共使用不到300字節的RAM。并且由于程序使用C語言編寫,稍加改動就可以在各種系列的微控制器上實現。微控制器通過GPRS上網的技術可以廣泛應用于需要遠程傳送數據的系統中,特別適合于遠程抄表、遠程監控等領域。我們目前正把這項技術應用于車輛監控調度系統,在試驗階段取得了比較好的效果。
參考文獻
1 Wavecom公司. GPRS User Guide. 2001-11
2 Wavecom公司. WISMO2C Hardware Specifications. 2000-08
3 Wavecom公司. AT Commands Interface, 2000-03
4 Simpson W. The Point to Point Protocol(PPP). RFC1661. 1994
5 PPP in HDLC-Like Framing. RFC1662. 1994
黃承安 碩士研究生,主要研究方向嵌入式系統的理論方法及軟硬件設計,無線網絡通信。
張躍 副教授,主要研究方向嵌入式系統,控制理論。





