《快速入门手把手》机智云上云(STM32 HAL篇)上篇
本帖最后由 野机工程师 于 2025-12-1 20:13 编辑《快速入门手把手》机智云上云(STM32篇)注:本项目用到的源码与工具将放文章结尾链接
概要:本项目基于STM32的最小系统板,移植机智云SDK,实现快速把传感器数据上机智云平台教程。
项目介绍:
本项目使用STM32F103C8T6最小系统板,基于HAL库的方式,使用wifi模块ESP01s,移植机智云的SDK到自己项目,实现把各类传感器数据快速上云,可以使用机智云APP远程显示数据与控制命令。
所用实物材料:
主控芯片:使用STM32F103C8T6,这里用到最小系统板,方便快捷。
wifi模块:选用ESP8266-01s
传感器:DHT11温湿度模块、LED
准备软件:keil5(MDK版本)、STM32CubeMx(用于配置STM32与生成HAL库代码)
实物连接:
LED负极 --- STM32的PA0
LED正极 --- 电源正极3.3V
ESP01S的3v3 --- 电源正极3.3V
ESP01S的GND --- GND
ESP01S的TX --- STM32的PA3
ESP01S的RX --- STM32的PA2
DHT11 的 3v3 --- 电源正极3.3V
DHT11 的 GND --- GND
DHT11 的 DATA --- STM32的PA1
1、在机智云平台上创建设备,设置数据点。
进入机智云平台,注册登录之后,进入开发者中心
创建设备,设置数据点
这里以其他为例
设置好名称,类型(这里根据图片默认即可)
然后编辑我们想要的数据点
这里以温湿度的数据点设置为例,如图
我们这里一个设置三个数据点:温度temp,湿度humi,照明LED_Flag
2、ESP01s刷机智云的固件
接下来先给wifi模块ESP01s刷机智云的固件,用于后面的移植机智云的SDK
我们使用CH340 USB转TTL模块,给esp01s烧录固件
实物连接 ch340连接esp01s
Esp01s 3V3 --- 3.3v
Esp01s GND --- GNDv
Esp01s TX --- CH340的RXD
Esp01s RX --- CH340的TXD
Esp01s EN --- 接高电平3.3V
Esp01s IO0 --- 接低电平GND,这里用于下载模式
CH340的跳冒接 VCC与3V3
连接好实物图之后就可以开始准备烧录固件了,先去机智云官网下载ESP8266固件
进入机智云官网---开发者中心---下载中心---GAgent---下载ESP8266固件
先解压,等下用这个8Mbit版本的固件
接下来打开ESP乐鑫官方的烧录固件工具(文章结尾工具包链接里面有提供)
选择对应的固件版本,这里ESP01s选择刚刚下载包里面的8Mbit版本,地址0x000,其他选项配置如图,点击start开始烧录
烧录好固件后,就可以进行MCU STM32 HAL库版本的SDK移植了
3、机智云SDK的移植与上云
移植机智云SDK
进入MUC开发页面
生成代码包之后下载下来,用于后面的移植到自己的工程
我们把这个SDK移植到自己的工程(也可以直接选择使用这个SDK工程)
移植机智云的SDK,我们需要先配置STM32需要的配置:一个定时器TIM2实现1ms中断给机智云作为基准时钟,一个串口usart1 用于与电脑通信实现调试打印功能,一个串口USART2用于单片机与esp8266的底层通信,我们打开STM32CubeMx开始配置
配置TIM2实现1ms中断
配置串口usart1,波特率115200
配置串口usart2,波特率9600
在NVIC中打开中断使能
配置完成,点击生成代码
配置完成后,开始移植机智云SDK
见下篇
附件:
(本文涉及的资料链接:
链接: https://pan.baidu.com/s/1OXzvFKjOj63mGiCBRmSDLA?pwd=WPC1 提取码: WPC1)
页:
[1]