STM32硬件连接和Keil代码修改教程:ESP8266(AT固件)连接阿里云物联网(附代码)

系列文章目录

提示:这里是从实际应用如何使用教学配置,未从原理讲解,适合小白从零开始到成功,比较有成就感
STM32+ESP8266(AT固件)连接阿里云物联网系列保姆级教学
1. 创建产品和设备
2. 设置产品Topic数据和功能定义设备物模型数据显示
3. 硬件连接+代码修改
4. Web数据可视化


STM32+ESP8266(AT固件)连接阿里云物联网

  • 系列文章目录
  • 3. STM32硬件连接+keil代码修改
  • 一、STM32硬件连接
  • 二、keil代码修改
  • 1.修改wifi名称和密码
  • 2.阿里云服务器的登陆配置
  • 3.STM32数据匹配物模型设定
  • 三、总结

  • 3. STM32硬件连接+keil代码修改

    创建产品和设备的目的主要是在阿里云物联网上提供一个可显示数据的载体,配置非常简单但是非常重要,是后面可视化数据必不可少的过程。
    一定仔细阅读,只要按步就般,你的STM32也能顺利连接阿里云并且数据可视化效果。

    平面数据效果图

    可视化数据效果图


    一、STM32硬件连接

    STM32F103 ESP8266
    PA2 RX
    PA3 TX
    GND GND
    3.3V 3.3V
    EN上拉10K到3.3V

    STM32使用的是Usart2,软体配置也要Usart2

  • 注意事项:
  • ESP8266瞬间电流较大,最好单独使用一颗转3.3V LDO,不然有可能无法连接
  • ESP8266烧录AT固件,程序使用AT指令连接阿里云。

  • 二、keil代码修改

    源码链接在下方:

    1.修改wifi名称和密码

    //WIFI配置
    #define WIFI_NAME	            "DDD"           		//wifi名称 
    #define WIFI_PASSWD             "598556898"        //wifi密码
    //阿里云服务器的登陆配置
    #define MQTT_BROKERADDRESS		"k075yp83M0U.iot-as-mqtt.cn-shanghai.aliyuncs.com"
    #define MQTT_CLIENTID 			"FESA234FBDS24|securemode=3,signmethod=hmacsha1,timestamp=789|"
    #define MQTT_USARNAME 			"Smarthome&k075yp83M0U"
    #define MQTT_PASSWD 			"791bf061e1e6acd44c6885de9b57559eaa4c627b"
    
    #define	MQTT_PUBLISH_TOPIC 		"/sys/k075yp83M0U/Smarthome/thing/event/property/post"  //在头文件中添加订阅和发布的话题
    #define MQTT_SUBSCRIBE_TOPIC	"/sys/k075yp83M0U/Smarthome/thing/service/property/set"
    

    2.阿里云服务器的登陆配置

    查看设备的连接信息

    三元组解析工具:
    链接:https://pan.baidu.com/s/1Z2OsWPSeGLNG2tYhwUBFjg?pwd=5985
    提取码:5985

    用MQTT工具解析出阿里云服务器的登陆配置信息共四个

  • MQTT_CLIENTID
  • MQTT_USARNAME
  • MQTT_PASSWD
  • MQTT_BROKERADDRESS
    将复制的设备证书放在MQTT工具中
  • 3.STM32数据匹配物模型设定

    //组装数据 发布多个数据
    sprintf(mqtt_message,"{\"method\":\"thing.service.property.post\",\"id\":\"123\",\"params\":{\"Humidity\":%d,\"temperature\":%.1f},\"version\":\"1.0.0\"}", Humi,temperature);			
    

    //组装数据  
    sprintf(mqtt_message,"{\"method\":\"thing.service.property.post_reply\",\"id\":\"211\",\"params\":{\"Switch1\":%d},\"version\":\"1.0.0\"}", LED0_STA);
    		
    //上传LED状态
    _mqtt.PublishData(MQTT_PUBLISH_TOPIC,mqtt_message,0);
    

    修改代码后,编译烧录。重新上下电。

    实验结果如下
    就可以正常上传数据到阿里云了

    代码程序链接:
    链接:https://pan.baidu.com/s/1Vacqje-bKkdWaUYu5iCzSw?pwd=5985
    提取码:5985

    三、总结

    请耐心阅读,如有点击不同的操作请重新尝试

    此节需要仔细理解,细心设置,方能成功
    1. 创建产品和设备
    2. 设置产品Topic数据和功能定义设备物模型数据显示
    3. 硬件连接+代码修改
    4. Web数据可视化

    物联沃分享整理
    物联沃-IOTWORD物联网 » STM32硬件连接和Keil代码修改教程:ESP8266(AT固件)连接阿里云物联网(附代码)

    发表评论