/*
* 函数名:ESP8266_STA_TCP_Client
* 描述 :WF-ESP8266模块进行STA TCP Clien测试
* 输入 :无
* 返回 : 无
* 调用 :被外部调用
*/
void ESP8266_STA_TCP_Client ( void )
{
char cStrInput [100] = { 0 }, * pStrDelimiter [2], * pBuf, * pStr;
u8 uc = 0;
u32 ul = 0;
ESP8266_Choose ( ENABLE );
// PC_Usart ( "-1-----------------------------sss");
ESP8266_AT_Test ();
ESP8266_Net_Mode_Choose ( STA );
ESP8266_Cmd ( "AT+CWLAP", "OK", 0, 5000 );
/// 处 理 登陆密码的操作
PC_Usart ( "------------------------------sss");
ESP8266_password_join();
/* do
{
PC_Usart ( "\r\n请输入要连接的WiFi名称和密钥,输入格式为:名称字符+英文逗号+密钥字符+空格,点击发送\r\n" );
scanf ( "%s", cStrInput );
PC_Usart ( "\r\n稍等片刻 ……\r\n" );
pBuf = cStrInput;
uc = 0;
while ( ( pStr = strtok ( pBuf, "," ) ) != NULL )
{
pStrDelimiter [ uc ++ ] = pStr;
pBuf = NULL;
}
} while ( ! ESP8266_JoinAP ( pStrDelimiter [0], pStrDelimiter [1] ) ); */
///
ESP8266_Enable_MultipleId ( ENABLE );
///处理 tcp 服务连接的函数
ESP8266_linkTCP_join();
/*
选择tcp/udp连接代码,以上修改为固定,在函数ESP8266_linkTCP_join()内。
do
{
g PC_Usart ( "\r\n请在电脑上将网络调试助手以TCP Server连接网络,并输入电脑的IP和端口号,输入格式为:电脑IP+英文逗号+端口号+空格,点击发送\r\n" );
scanf ( "%s", cStrInput );
PC_Usart ( "\r\n稍等片刻 ……\r\n" );
pBuf = cStrInput;
uc = 0;
while ( ( pStr = strtok ( pBuf, "," ) ) != NULL )
{
pStrDelimiter [ uc ++ ] = pStr;
pBuf = NULL;
}
} while ( ! ( ESP8266_Link_Server ( enumTCP, pStrDelimiter [0], pStrDelimiter [1], Multiple_ID_0 ) ) );
// && ESP8266_Link_Server ( enumTCP, pStrDelimiter [0], pStrDelimiter [1], Multiple_ID_1 ) &&
// ESP8266_Link_Server ( enumTCP, pStrDelimiter [0], pStrDelimiter [1], Multiple_ID_2 ) &&
// ESP8266_Link_Server ( enumTCP, pStrDelimiter [0], pStrDelimiter [1], Multiple_ID_3 ) &&
// ESP8266_Link_Server ( enumTCP, pStrDelimiter [0], pStrDelimiter [1], Multiple_ID_4 )
*/
GPIO_ResetBits(GPIOC, GPIO_Pin_3);
Delay_ms(1000);
linktcp_LED_tell();linktcp_LED_tell();linktcp_LED_tell();
//LED_all_hei();
// GPIO_ResetBits(GPIOC, GPIO_Pin_3);
/*
if(usart1_rx_value==1){
PC_Usart ( "\r\n请输入端口ID%d要发送的字符串,输入格式为:字符串(不含空格)+空格,点击发送\r\n", uc );
scanf ( "%s", cStrInput );
ul = strlen ( cStrInput );
ESP8266_SendString ( DISABLE, cStrInput, ul, ( ENUM_ID_NO_TypeDef ) uc );
ESP8266_SendString ( DISABLE, cStrInput, ul, ( ENUM_ID_NO_TypeDef ) uc );
} */
//
for ( uc = 0; uc < 2; uc ++ )
{
PC_Usart ( "\r\n请输入端口ID%d要发送的字符串,输入格式为:字符串(不含空格)+空格,点击发送\r\n", uc );
scanf ( "%s", cStrInput );
ul = strlen ( cStrInput );
// ESP8266_SendString ( DISABLE, cStrInput, ul, ( ENUM_ID_NO_TypeDef ) uc );
ESP8266_SendString ( DISABLE, cStrInput, ul, ( ENUM_ID_NO_TypeDef ) 0 );
PC_Usart ( "%s", strEsp8266_Fram_Record .Data_RX_BUF );
}
PC_Usart ( "\r\n请在网络调试助手发送字符串\r\n" );
while (1)
{
//
//接收电脑端的数据
pStr = ESP8266_ReceiveString ( DISABLE );
PC_Usart ( "%s", pStr );
///
//发送电脑端的数据
// scanf ( "%s", cStrInput );
//
// ul = strlen ( str1_1esp8266.Data_RX_BUF );
//
// ESP8266_SendString ( DISABLE, str1_1esp8266.Data_RX_BUF, ul, ( ENUM_ID_NO_TypeDef ) 0 );
//
// PC_Usart ( "%s", str1_1esp8266 .Data_RX_BUF );
PC_Usart ( "\r\n输入格式为:字符串(不含空格)+空格,点击发送\r\n", uc );
//
scanf ( "%s", cStrInput );
ul = strlen ( cStrInput );
ESP8266_SendString ( DISABLE, cStrInput, ul, ( ENUM_ID_NO_TypeDef ) 0 );
PC_Usart ( "%s", strEsp8266_Fram_Record .Data_RX_BUF );
}
}