sim900a和Esp8266使用AT指令的区别


1.连接云服务

1)sim900A

//AT+CIPSTART="TCP","183.230.40.39","6002"  

2)esp8266

//AT+CIPSTART="TCP","183.230.40.39",6002

2.串口接收数据

1)SIM900A:    原始数据

2)ESP8266: +IPD:  后面才是有效数据

3.TCP初始化流程AT指令

1)SIM900

if ( ESP8266_SendCmd ( "AT\r\n", "OK", 100 ) )
{

delay_ms ( 1500 );

if ( ESP8266_SendCmd ( "AT\r\n", "OK", 100 ) )
{
//òì3£
return 1;
//while ( 1 );
}
}
if ( ESP8266_SendCmd ( "ATE0\r\n", "OK", 100 ) )
{

delay_ms ( 1500 );

if ( ESP8266_SendCmd ( "AT\r\n", "OK", 100 ) )
{
//òì3£
return 1;
//while ( 1 );
}
}


if ( ESP8266_SendCmd ( "AT+CPIN?\r\n", "READY", 1000 ) ) // ?ì2éê??ú?¨ê?·??ú
{
return 1;

if ( ESP8266_SendCmd ( "AT+CGCLASS=\"B\"\r\n", "OK", 100 ) ) // éè??GPRSò??ˉì¨ààDí?aB
{
return 1;

if ( ESP8266_SendCmd ( "AT+CGDCONT=1,\"IP\",\"CMNET\"\r\n", "OK", 100 ) ) // ?¨ò?PDPé?????£?éè??PDPé?????±ê???a1£?IPD-òé£??óè?μ??aCMNET.
{
return 1;

if ( ESP8266_SendCmd ( "AT+CGATT=1\r\n", "OK", 100 ) ) //??×?GPRS
{
return 1;

2)ESP8266

if ( ESP8266_SendCmd ( "AT\r\n", "OK", 100 ) )
{

delay_ms ( 1500 );

if ( ESP8266_SendCmd ( "AT\r\n", "OK", 100 ) )
{
//òì3£
return 1;
//while ( 1 );
}
}
if ( ESP8266_SendCmd ( "ATE0\r\n", "OK", 100 ) )
{

delay_ms ( 1500 );

if ( ESP8266_SendCmd ( "AT\r\n", "OK", 100 ) )
{
//òì3£
return 1;
//while ( 1 );
}
}

if ( ESP8266_SendCmd ( "AT+CWMODE=1\r\n", "OK", 100 ) ) // éè???a station ?£ê?
{
return 1;
}


if ( ESP8266_SendCmd ( "AT+CIPMODE=0\r\n", "OK", 100 ) ) // 0-·?í?′??£ê?
{
return 1;
}

if ( ESP8266_SendCmd ( strESP8266_WIFI_INFO, "CONNECTED", 13000 ) ) //"GOT IP" á??ó?·óé?÷
{
if ( ESP8266_SendCmd ( strESP8266_WIFI_INFO, "CONNECTED", 13000 ) )
{
return 1;

}
}