废话不多说,先上连接源码
这里配置的为缓存模式,是指在4G模组接收到发送过来的数据时候可以将数据放入模组的缓存区,在需要数据的时候区进行读取再解析,这样在单片机执行其他操作时候也不会造成数据的丢失,在使用如下AT指令步骤便可以连接上ONENET,在云平台即可看到设备在线‘
前提设备ID,产品ID,token这些不能出错,以下代码使用循环三次发送,防止一次设置不成功,只有有接收到OK即跳出当前循环。
for (int attempt_count = 0; attempt_count < 3; attempt_count++)
{
//连接到网络后必须要发送AT+MQTTCFG="clean",0,1(onenet要求clean参数必须是1)
buf_len = sprintf(str_buf, "AT+MQTTCFG=\"clean\",0,1\r\n"); // 清除会话
UART2_Send_String(str_buf,buf_len);
mdelay(50);
memset((void *)byRxBuf_2, 0, sizeof(byRxBuf_2));
UART2_Receive_String();
mdelay(1200);
if(strstr((const char *)byRxBuf_2,"OK"))//等待接收OK后退出
{
break;
}
}
//配置4G模组为接收缓存模式
for(int attempt_count=0;attempt_count<3;attempt_count++)
{
memset((void *)byRxBuf_2, 0, sizeof(byRxBuf_2));//清空UART2串口接收缓存
buf_len = sprintf(str_buf, "AT+MQTTCFG=\"cached\",0,1\r\n");//获取当

509

被折叠的 条评论
为什么被折叠?



