收藏官网首页
查看: 489|回复: 0

[资料] 《机智云Gokit3开发篇》6 连接wifi上云与移植SDK实现远程控制

 楼主| 发表于 2025-12-24 00:33:47 | 显示全部楼层 |阅读模式
免费使用STM32、APP自动代码生成工具


注:文章结尾附本文章源码、原理图 资料链接
0Gokit3封面.png
概述:介绍 gokit3 的“wifi”——ESP-12F 模组,并演示如何给它烧录机智云GAgent 固件,移植官方SDK,实现设备联网与APP数据显示与控制。


前期准备工作:


硬件准备:


Gokit3 开发板(板载 STM32F103 + ESP-12F)。
1.png
2.png
USB 转 TTL 模块(如 CH340)。
4.png 5.png
杜邦线若干(用于连接 TTL 模块与模组)。


软件准备:


乐鑫烧录工具 (Flash Download Tools)。---- 可以去乐鑫官网下载,文章结尾链接提供相应资料安装包


机智云 GAgent 固件包(以下会提供如何在机智云官网下载固件包)。


一、wifi联网的工作原理介绍


STM32 (主控芯片): 负责处理具体的业务(如控制灯光、读取传感器),通过串口USART与wifi模块进行通信实现上云。


ESP-12F (wifi模块): 负责连接 Wi-Fi,通过 TCP/IP 协议处理网络数据。


简单解释:STM32 通过串口(TX/RX)发送简单的指令给 ESP-12F,ESP-12F 将这些指令通过 Wi-Fi 发送到云端。反之亦然


二、烧录机智云固件


这里选择烧录GAgent固件的原因如下:


普通 AT 固件: 虽然能联网,但需要 STM32 写大量的代码来处理机智云的通信协议(MQTT、心跳包、加密等),开发极其复杂,容易出错。


机智云 GAgent 固件: 这是一个高度封装的固件。它把连接机智云所需的所有复杂协议都打包好了。


下面演示如何从官网下载固件及烧录演示


2.1  官网下载机智云固件
进入机智云官网开发者中心的下载中心,选择GAgent固件下载
6.png
解压完后这个32Mbit_combine 版本就是Gokit3的wifi模组需要的固件
7.png
2.2 连接好硬件,准备烧录


这里使用CH340  USB转TTL模块进行固件烧录


这里wifi模块已经引出了TX,RX,GND的引脚,直接连接即可
8.png


esp8266   GND  ---   GND
Esp8266  TX   ---   CH340的RXD
Esp8266  RX   ---   CH340的TXD
供电的话我们选择直接使用板子供电,直接把wifi模块插在板子上的SOC模式,然后给SOC核心功能板供电即可


然后把wifi模组的按键达到GND就是为下载烧录模式
拉低 GPIO0(接地) -> 复位模组 -> 进入 UART 下载模式。


9.png


2.3 连接好硬件,准备烧录
打开乐鑫烧录工具 (Flash Download Tools)
10.png


这里选择刚刚下载的固件,地址填0x000
11.png
Flash Size (32Mbit), SPI Speed, 40MHZ


14.png


COM端口选择CH340的端口,如果不知道端口可以如图在设备管理器中查看
13.png


点击开始烧录下载
15.png
烧录成功,把ESP模组的按键拨回运行模式,拔出插回MCU模式,接上MCU底板,开始移植SDK实现上云
、移植机智云SDK实现上云


3.1 打开机智云官网,开发者中心,创建设备,添加数据点


16.png


这里添加数据点,等下生成的SDK APP软件会有对应的模版,我们这里以控制亮RGB灯为例,创建三个数据点,分别控制红灯、绿灯、蓝灯
17.png


以此类推,创建三个数据点,红绿蓝
18.png
点击MCU 开发,选择对应的芯片,填入左上角复制的秘钥,生成SDK代码包
19.png




3.2 移植生成的SDK代码到自己工程
打开生成的代码包,把Gizwits和utils这两个文件夹复制进自己的工程,或者直接用这个工程也可以,这里以复制黏贴进自己的工程移植为例
20.png
然后打开Keil,在Keil添加入工程目录,记得引用一下头文件路径


21.png


3.3 打开CubeMX生成机智云SDK所需要的外设:


所需配置:Time2定时器作为基准时钟、USART1作为调试打印,USART2用于STM32与ESP8266通信
具体参数配置如下:


22.png
23.png
24.png
然后打开NVIC中断配置优先级如下:


25.png


打开工程,这里的定时器中断和串口2的中断回调函数,在SDK里面已经编写了,不需要重复编写。
3.4 编写主功能逻辑函数与调用接口函数:


初始化函数如下,记得引用移入代码的头文件
26.png


这个初始化函数设置数据点上报的默认值,这里我们默认值都给0
27.png
在主函数while里面运行这两个函数,与机智云交互函数调用
28.png


这里书写命令下发控制需要调用的结果
例如这里写接收到红灯数据点为1,就亮红灯,其他以此类推
29.png


3.5 设置key1 长按和短按 为选择配网模式
按键1短按: 设置为一键配网
按键1长按: 设置为热点配网
30.png


3.6 烧录运行,打开机智云APP
这里烧录方式的可以看此链接:https://club.gizwits.com/thread-170452-1-1.html
如何使用机智云APP配网连接硬件可以看此连接:https://club.gizwits.com/thread-170450-1-1.html


3.7 先短按Key1,进入一键配网模式,此时Gokit3亮白灯,打开机智云APP,开启一键配网,此时可以看到连接成功:


此时可以测试,远程控制
31.png
本文到此结束,谢谢大家!


源码、原理图资料链接
原理图:
链接: https://pan.baidu.com/s/1sNjl9m1t6flasBwPKZFK3A?pwd=WPC1 提取码: WPC1


源码:
链接: https://pan.baidu.com/s/1wqErf1tXGLQYLwW7y4UNww?pwd=WPC1 提取码: WPC1


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表