wifi模块串口测试进入微信配网没有任何问题,就是通过stm32控制下发AT指令会出现问题:下发AT+RST没有任何问题,就是进入配网模式会卡死,无法进入配网模式,void WeChat_Airkiss_WiFi_net(void) {
//memset(usart2.RxBuff, 0, sizeof(usart2.RxBuff));
char cStr [100];
sprintf ( cStr, "AT+WMODE=1,1");
AI_WB2_01S_USART("%s\r\n", cStr);
delay_ms(500);
while (strstr((char *)usart2.RxBuff, "OK") != 0) // 检查是否WIFI连接成功响应
{
printf("\r\n设置模块的 Wi-Fi 工作模式并保存到Flash.\r\n");
memset(cStr, 0, sizeof(cStr));
sprintf ( cStr, "AT+WCONFIG=3"); //本项目用的AI-WB2-01S模块,微信 AirKiss 配网
AI_WB2_01S_USART("%s\r\n", cStr);
delay_ms(500);
if (strstr((char *)usart2.RxBuff, "OK") != 0) //判断是否微信 AirKiss 配网模式是否设置成功,模式设置成功则判断是否配网成功
{
delay_ms(5000); //延时,等待配网
while (strstr((char *)usart2.RxBuff, "+EVENT:WIFI_CONNECT") != 0 || strstr((char *)usart2.RxBuff, "+EVENT:WIFI_GOT_IP") != 0) //判断是否配网成功
{
printf("\r\n配网成功,wifi连接成功.\r\n");
// 配网成功设置为自动上电联网
memset(cStr, 0, sizeof(cStr));
sprintf ( cStr, "AT+WAUTOCONN=1");
AI_WB2_01S_USART("%s\r\n", cStr);
delay_ms(500);
//配网成功后需要关闭配网模式,否则会大量占用内存
memset(cStr, 0, sizeof(cStr));
sprintf ( cStr, "AT+WCONFIG=0");
AI_WB2_01S_USART("%s\r\n", cStr);
delay_ms(500);
AirkissFlag = 1; // 微信配网成功标志
}
}
}
} 这是程序代码,
下面是输出日志
读出WIFI模块返回数据 read from usart2.RxBuff:AT+RESTORE
读出WIFI模块返回数据 read from usart2.RxBuff:
OK
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:?
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:
读出WIFI模块返回数据 read from usart2.RxBuff:
################################################
arch:BL602,NULL
company:Ai-Thinker|B&T
ble_mac:7cb94cda3b4c
wifi_mac:7cb94cda3b4b
sdk_version:release/release_bl_iot_sdk_1.6.40-11-gf4c8dac01
firmware_version:Release-V4.18_P2.13.1-5e76b00
compile_time:May 11 2024 09:30:17
ready
################################################
WIFI重启成功.
超时,未连接到WIFI.
FlashID is 0xEF4016
Device ID is 0x15
检测到串行flash芯片!
flash芯片型号为W25Q32!
读出WIFI模块返回数据 read from usart2.RxBuff:AT+WMODE=1,1走到这里就停止了 |