ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

模块3 WIFI物联网通信-项目2 数据上报下发-任务1 硬件设备连接OneNET MQTT服务器

模块3 WIFI物联网通信-项目2 数据上报下发-任务1 硬件设备连接OneNET MQTT服务器 基于STM32的物联网环境监测与远程控制系统实训套件-淘宝网任务1 硬件设备连接OneNET MQTT服务器一、任务描述本任务基于STM32F103C8T6 最小系统板与ESP-01S WiFi模块在已连接路由器 WiFi 的基础上通过MQTT 协议与OneNET 物联网平台建立通信连接。二、任务目标1. 知识目标1深入理解ESP-01S WiFi 模块的硬件结构、通信方式、工作模式。2掌握串口 UART 异步通信原理、电平标准、数据格式。3熟练掌握ESP-01S 基础 AT 指令集。4理解 **STA 模式客户端模式** 连接路由器的工作流程。2. 能力目标1能够完成 ESP-01S 硬件接线TX→PA3RX→PA2VCC→3.3VGND→GND。2能够在 STM32CubeMX 中正确配置USART2。3能够编写串口发送 AT 指令、接收模块响应数据的程序。4能够实现ESP-01S 成功连接路由器 WiFi并获取 IP。3. 素质目标1培养串口通信严谨、AT 指令规范的开发习惯。2提升硬件接线、串口调试、指令收发、问题排查能力。3养成先测试模块 → 再设置模式 → 最后连接 WiFi的工程流程。三、任务重难点1. 任务重点1USART2 配置波特率 115200、8N1、PA2-TX、PA3-RX。2TX/RX 交叉连接。3ESP-01S 必须 3.3V 供电。4核心 AT 指令测试、设置 STA 模式、连接 WiFi、查询 IP。2. 任务难点1供电不足导致模块不响应、乱码、重启。2串口数据收发不完整、指令缺少\r\n。3WiFi 名称 / 密码错误、信号弱导致连接失败。4串口调试与数据解析。四、知识准备1.ESP-01S WiFi模块介绍ESP-01S是乐鑫公司推出的一款低成本、高性能的 WiFi 模块它基于 ESP8266 芯片具有体积小、功耗低、易于集成等特点广泛应用于物联网IoT项目中。芯片ESP8266接口UART 串口通信方式AT 指令集工作电压3.3V严禁 5V模式STA 模式连接路由器默认波特率1152002. 串口 UART 通信知识STM32 ↔ESP-01S本任务使用 USART2PA2 USART2_TX 发送PA3 USART2_RX 接收串口必须配置波特率115200数据位8停止位1校验位无流控无注意TX 与 RX 必须交叉连接STM32_TX(PA2) → ESP_RXSTM32_RX(PA3) → ESP_TX3. AT 指令知识连接 WiFi 核心所有 AT 指令必须以 \r\n 结尾。1AT功能测试模块是否正常回复OK2ATCWMODE1功能设置为 STA 模式客户端连接路由器回复OKATCWJAPSSID,PASSWORD功能连接 WiFi示例ATCWJAPMyWiFi,12345678回复OK 表示连接成功4ATCIFSR功能获取模块 IP回复WIFI GOT IP4.供电要求ESP-01S 必须 3.3V 供电工作电流峰值较大必须共地GND 连在一起供电不足会导致模块乱码、无响应、反复重启五、硬件连接ESP-01S模块与主控STM32F103C8T6的引脚连接如表1所示。表1 ESP-01S模块与主控STM32F103C8T6的引脚连接编号ESP-01S模块主控STM32F103C8T61VCC3V32GNDGND3TXPA3USART2_RX4RXPA2USART2_TX硬件连接电路图如图1所示。图1硬件连接电路图六、任务实现任务1.1 添加onenet.c文件1.将onenet文件夹拷贝到工程根目录。2.在项目中添加onenet.c文件如图2所示。图2添加onenet.c文件3.修改onenet.c文件中的代码。#define PROID tsK7G227aH //产品ID#define ACCESS_KEY version2018-10-31resproducts%2FtsK7G227aH%2Fdevices%2Fa1et1812532952methodsha1signnA1SYqi8zVaAjiMXpvxGhrdgang%3D //token#define DEVICE_NAME a1 //设备名称4.将\onenet\inc添加到Include Paths中如图3所示。图3 将\onenet\inc添加到Include Paths中任务1.2 添加MqttKit.c文件1.将MQTT文件夹拷贝到工程根目录。2.在项目中添加MqttKit.c文件如图4所示。图4添加MqttKit.c文件3.将\MQTT添加到Include Paths中如图5所示。图5 将\onenet\inc添加到Include Paths中任务 1.3 修改 main.c 代码1.在/* USER CODE END Includes */前添加如下代码//连接onenet#include onenet.h2.在/* USER CODE END 2 */前添加如下代码while(OneNet_DevLink())//连接OneNETHAL_Delay(1000);任务 1.4 编译、下载、查看结果1.点击编译按钮编译程序。2.点击下载按钮下载程序。3.打开串口调试助手按stm32f103c8t6主控板上的复位键在串口调试助手中输出打印信息如图6所示。图6 输出打印信息4.刷新 OneNET设备页面设备状态由离线变为在线如图7所示。图7 设备在线
返回列表