支持TCP/IP協(xié)議的新一代GSM/GPRS模塊及應(yīng)用
應(yīng)用實(shí)例
在這一部分,我們將列出一些使用索尼愛立信GR47模塊的應(yīng)用實(shí)例以供參考。第一個(gè)例子顯示了使用AT命令建立一個(gè)TCP會話的步驟,第二個(gè)則是嵌入式應(yīng)用的范例。
1.使用AT命令接入GPRS網(wǎng)
GR47提供一系列AT命令來完成TCP/IP協(xié)議的功能,以簡化應(yīng)用集成的流程。相關(guān)的命令可以讓應(yīng)用設(shè)計(jì)者建立和取消UDP和TCP 協(xié)議,控制GPRS PDP context 的建立,傳送數(shù)據(jù),檢查IP的狀態(tài)信息等。
啟動(dòng)TCP會話功能的步驟如下所示:
1. at+cgdcont=1,“IP”,“CMNET” *write PDP context information, connect to China Mobile GPRS network*
2. at*e2ipa=1,1 *active IP session using stored PDP context*
3. at*e2ipi=0 *return currently assigned IP address*
4. at*e2ipo=1,“166.111.8.238”,23 *initiate a TCP connection to the module*
5. at*e2ipc *close a currently opened IP connection*
當(dāng)模塊處于數(shù)據(jù)傳輸狀態(tài)中時(shí),需要激活DTR來轉(zhuǎn)換回在線命令模式,ATO則被用于再次轉(zhuǎn)換回?cái)?shù)據(jù)模式。
2.嵌入式應(yīng)用接入GPRS網(wǎng)
以下描述示范怎樣激活PDP文本、開始TCP對話以及接收數(shù)據(jù)。這只是整個(gè)程序的一部分,不能單獨(dú)運(yùn)行。
/* Reset the IP error flag by reading it */
gtf( APPS_IP_ERROR_TRIGGER );
Err = pdpa( 1, 1 );
prtf( “n PDP activate result = %dn”, Err );
if ( Err == 0 )
{ Val = ipi( 0 );
prtf( “ IP Address = %x”, Val );}
else
{ prtf( “n PDP activation failed!n” );
return;}
Err = ipo( 1, SckNum );
if( Err != 0 )
{ prtf( “ n TCP Socket open failed!n” );}
else
{ prtf( “n TCP Socket Opened!n” );
Err = tcpc( SckNum, Port, Address );
if( (Err == 0) || (Err == TCP_CONNECTING) || (Err == TCP_CONNECTED) )
{ while( !Complete (gtb( APPS_IP_ERROR_STATUSBYTE ) == 0) )
{ int len;
/* Receive some data */
if( gtf( APPS_IP_DATA_RECVD ) )
{ prtf( “n IP DATA RECVD” );
len = RXTX_SIZE;
Err = tcpr( SckNum, RxTxBuf, len);
if( Err != 0 )
{ prtf( “n *** Error in TCP Receive (%d)。 ***nn”, Err );}
else
{ if( gtb( APPS_IP_TCPSTATUS_BYTE ) == TCP_CONNECTING )
{ prtf( “n Delaying while TCP Connect occurs.。.nn” );}
else
{ prtf( “n Received %d bytes of data.nn”, len ); }
}
}
}
}
Err = ipc( SckNum );
if ( Err != 0 )
{ prtf( “n Socket close failed!n” );} }
Err = pdpa( 0, 1 );
prtf( “n PDP deactivate result = %dn”, Err );
本文小結(jié)
基于GSM/GPRS的TCP/IP協(xié)議為很多應(yīng)用提供了更高級的解決方案,例如,車輛定位、遠(yuǎn)程抄表和遠(yuǎn)程銀行等。它具有無線通信的靈活性和移動(dòng)性,TCP/IP協(xié)議提供對因特網(wǎng)“永遠(yuǎn)在線”的通信方式,以及相對于SMS、CSD等更為經(jīng)濟(jì)的解決方案。索尼愛立信GSM模塊,支持TCP/IP協(xié)議及嵌入式應(yīng)用,是很完善的無線通信解決方案之一。
tcp/ip相關(guān)文章:tcp/ip是什么
評論