在.Net micro framework的一個項目的開發過程中,有一個GPRS的Modem。我們在主板上通過串口,提供了5v的電壓。
GPRS Modem設計板
我們使用TXD和RXD,對應到另外一塊主板晶片上面的COM4,在開始實現GPRS Modem撥號的過程中,我想是使用GSM 7.07的標準,在Tera Term終端中,經由STK500開發電板串連上GPRS Modem上面的串口,然後發送命令來撥接。
steps when dial up the GPRS Modem:
/* Steps when Reset the GPRS Modem:
* 1.Check the PIN code, if need we update it, update the PIN code.
* 2.ask for a disconnection.
* 3.Set Default Connection.
* 4.Set Flow Control. DTE-DCE local flow control. Flow control = NONE.
* 5.SET PDP.
* 6.Dial Specified PDP.
*/
於是首先發送:AT,
接著Ask for a disconnection of all connections in GPRS Modem: ATH
then, Set the default configuraiton: ATZ
這個命令可以softreset,如果想硬重啟這個GPRS Modem,還是得需要往Reset腳上置低一次。
接著,set flow contrl,DTE-DCE Local Flow Control, flow control = NONE,
AT+IFC=0,0
然後就是set DCD signal, to match the network data carrier.
AT&C1.
接下來,可以看看SIM卡是否需要輸入PIN code,查詢下先:AT+CPIN?
根據相應的結果來決定是否需要輸入數字 PIN 碼或者不用輸入。
然後還剩下最後兩步,設定PDP,然後dial the specified PDP:
AT+CGDCONT=1,"IP","cmnet"
ATDT*99***1#
在atdt這個串連的過程中,可以讀取DCD針腳上面的表示是否串連上,來決定是否需要切換使用PPP 協議來撥號。
這裡,實際上說明這個題目說明的事情是不可能實現的,一個Serial Port終端,可以使用AT命令來串連上Network carrier,但是想要撥號成功上網,
使用終端是不可以的,因為沒有實現PPP協議。但是,使用終端串連上Network carrier卻是可以的。
做一回標題黨 呵呵