其他分享
首页 > 其他分享> > 002-STM32+ESP8266+Air302基本控制篇(阿里云物联网平台)-STM32+ESP8266使用SSL加密方式接入阿里云物联网平台

002-STM32+ESP8266+Air302基本控制篇(阿里云物联网平台)-STM32+ESP8266使用SSL加密方式接入阿里云物联网平台

作者:互联网

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/ESA2GJK1DH1K_A/aly.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

<iframe frameborder="0" height="1500" name="ifd" scrolling="auto" src="https://mnifdv.cn/resource/cnblogs/ESA2GJK1DH1K_A/aly.html" width="100%"></iframe>

 

说明

阿里云的TCP和TCP+SSL方式连接MQTT服务器使用的端口号都是 1883;

如果使用SSL连接, 拼接的ClientID参数时  securemode=2

 

提示

单片机都是使用串口2和模组进行通信, 开发板只安装上WiFi模组.

 

测试

1.打开本节代码

 

2.修改自己的阿里云设备信息

 

 

3.为便于快速测试,可直接配置模组连接的路由器

不配置直接下载程序也可以, 下载完以后记得使用先前的APP或者微信小程序进行配网(APUConfig)

 

 

4.使用单片机串口1打印串口日志(115200)

 

 

5.正常运行情况下日志会打印

 

 

 

 

 

单片机程序说明(程序执行流程和非SSL连接里面的一样,只不过AT指令变了而已)

1.提示


 

 


连接指令:
"AT+CIPSTART=\"SSL\",\"%s\",%s\r\n",IP,Por

使用上面的 AT+CIPSTART指令连接TCP以后发送和接收数据是如下方式

  1.发送数据,假设发送66个数据

  1.1 首先发送 AT+CIPSEND=66\r\n    66:为要发送的数据个数

  1.2 等待模块返回 >

  1.3 发送要发送的数据给模块

  1.4 模块返回 Recv 66 bytes  

  1.5 模块发送完成返回 SEND OK

  2.接收数据

  2.1 接收数据格式: +IPD,XXXX:真实数据    XXXX 为接收的数据个数

  3.意外断开

  3.1 和TCP服务器断开:CLOSED\r\n

  3.1 和路由器断开:WIFI DISCONNECT\r\n

 

 

2.以SSL方式连接服务器

 

 

 

 

 

3.发送连接MQTT协议

 

 

 

 

 

 

4.实际发送MQTT数据的地方也改为了SSL的AT指令

 

标签:发送,ESP8266,TCP,STM32,SSL,66,串口,云物,连接
来源: https://www.cnblogs.com/yangfengwu/p/16124426.html