/*
*********************************************************************************************************
* 函 数 名: wifi_ack_check
* 功能说明: 串口初始化函数
* 形 参: ack
* 返 回 值: TRUE\FALSE
*********************************************************************************************************
*/
uint8_t wifi_ack_check(uint8_t* ack)
{
if(usart3_recv_end_flag == 1){
usart3_recv_end_flag = 0;
if(strstr((const char *)usart3_rx_buf,(const char*)ack)){
rs485_send(usart3_rx_buf,usart3_rx_len);
usart3_rx_len = 0;
memset(usart3_rx_buf,0,DATA_BUFFER_SIZE);
return TRUE; //返回TRUE说明wifi模组已有应答
}
}
return FALSE; //返回FALSE说明wifi模组没有应答
}
/*
*********************************************************************************************************
* 函 数 名: send_wifi_cmd
* 功能说明: 串口初始化函数
* 形 参: cmd,ack,waittime
* 返 回 值: TRUE\FALSE
*********************************************************************************************************
*/
uint8_t send_wifi_cmd(uint8_t *cmd,uint8_t *ack,uint8_t waittime) //单片机给wifi模组发送AT指令
{
DMA_usart3_send(cmd,sizeof(cmd));
delay_ms(waittime);
if(wifi_ack_check(ack)){
return TRUE; //返回TRUE说明wifi模组已有应答
}
return FALSE; //返回FALSE说明wifi模组没有应答
}