打印
[应用相关]

STM32F103C8T6 单片机 ESP8266 12F接入机智云

[复制链接]
1347|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
aoyi|  楼主 | 2021-7-5 15:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
0 材料

STM32F103C8T6最小系统板子
安心可ESP8266-12F
STLINK程序下载器
USB转TTL模块(串口1看log信息)(下载8266固件)
软件方面:


使用特权

评论回复
沙发
aoyi|  楼主 | 2021-7-5 15:36 | 只看该作者
1 安心可12F实物图

是邮票,还挺好看。


使用特权

评论回复
板凳
aoyi|  楼主 | 2021-7-5 15:37 | 只看该作者
2 实现电路图:




使用特权

评论回复
地板
aoyi|  楼主 | 2021-7-5 15:38 | 只看该作者
3 制作PCB:

用单片机STM32F103C8T6,配合ESP12F,外部加了些温湿度、继电器、显示屏、蜂鸣器、MQ气体检测、按键,可以不焊接。


使用特权

评论回复
5
aoyi|  楼主 | 2021-7-5 15:39 | 只看该作者
实物,我就焊接了电源、8266和MCU排母排针,想着后续上报温湿度、气体浓度啥的,MCU端也有相应显示,还有按键控制。但是做完机智云发现机智云有点简单,估摸着等有空了弄个socket通信自己玩比较爽。

使用特权

评论回复
6
aoyi|  楼主 | 2021-7-5 15:40 | 只看该作者
4 下载烧写工具:

官网


使用特权

评论回复
7
aoyi|  楼主 | 2021-7-5 15:41 | 只看该作者
5 下载机智云的固件:
自己开发8266就叫SOC解决方案,需要向机智云申请源码,机智云管它自己的这个协议叫agent。
我用现成的固件(开发8266估计得花不少时间学习)+MCU。固件是机智云提供的。下图处:


使用特权

评论回复
8
aoyi|  楼主 | 2021-7-5 15:43 | 只看该作者
下载下来后:
要combine的,这样不用自己设置地址。
如果自己开发ESP8266片内程序,就需要申请机智云agent源码,再它源码上开发自己的程序,然后整出几个bin文件,然后填写片内地址下载。我这里用现成的,机智云已经把几个bin整合成了这个combine文件。

使用特权

评论回复
9
aoyi|  楼主 | 2021-7-5 15:46 | 只看该作者
6 固件烧写过程

把GPIO接到GND


使用特权

评论回复
10
aoyi|  楼主 | 2021-7-5 15:46 | 只看该作者
打开软件,选combine文件。
这里我是DOUT下载成功了,别的ESP可能要选别的SPI MODE,只要能下载进去,管它选啥模式,多试几个。
选32Mbit-C1,这个可能是内部地址划分啥的,不管它,跟着官方选。
取下我做的板子的MCU,单独给8266供电。
USB转ttl接GND RX TX接到8266。
然后点START,然后按一下8266的复位按键(上文中的原理图里的SW1),固件就慢悠悠下载进去了。
下图就是完成后图。



使用特权

评论回复
11
aoyi|  楼主 | 2021-7-5 15:47 | 只看该作者
7 下载MCU源码

瞎点点,搞个产品,搞几个数据线,弄成下面这样。


使用特权

评论回复
12
aoyi|  楼主 | 2021-7-5 15:48 | 只看该作者
弄个源码下来,源码含有机智云协议的。

使用特权

评论回复
13
aoyi|  楼主 | 2021-7-5 15:50 | 只看该作者

进入while1之前加句话使得配置8266进去Air-link连接模式:

gizwitsSetMode(WIFI_AIRLINK_MODE);//Air-link????


使用特权

评论回复
14
aoyi|  楼主 | 2021-7-5 15:50 | 只看该作者
然后MCU源码下载进单片机,让ESP8266进入正常工作模式。
这个时候整个板子就工作起来了,ESP8266也进入了Air-link连接模式,正在等待配置。


接着手机下载机智云软件,手机连接家里wifi,注意不能是5G网络,登陆后添加设备,一键配置,填wifi密码,搜索设备,连接即可。
8266连接上wifi后,就不需要Air-link连接模式了,删除那句话后重新下载一次程序。

使用特权

评论回复
15
aoyi|  楼主 | 2021-7-5 15:51 | 只看该作者
8 手机、服务器、硬件 互通互连的查看

手机端进入设备后可以修改数值。


使用特权

评论回复
16
aoyi|  楼主 | 2021-7-5 15:52 | 只看该作者
机智云开发端也有连接。

使用特权

评论回复
17
aoyi|  楼主 | 2021-7-5 15:53 | 只看该作者
也可以打开实时调试,去看设备更改信息。

使用特权

评论回复
18
aoyi|  楼主 | 2021-7-5 15:54 | 只看该作者
硬件单片机程序也是可以获取到实时的数据、也可传输数据到机智云。当手机端改变数据的时候,串口0打印出信息。更细节的东西需要开发MCU程序了。

使用特权

评论回复
19
aoyi|  楼主 | 2021-7-5 15:55 | 只看该作者
9 MCU程序的开发
做完上面的过程,基本是了解了机智云了。
机智云维护服务器数据点,APP和MCU都可以获取数据点信息,也可以上报数据点信息。服务器无漂亮显示界面,想要这样估计还得自己开发web去申请服务器数据点信息。机智云协议双向通信、轻松配置入网、绑定升级固件。主要是机智云的agent固件,他开发的协议支持得多,有人维护,自己去开发全栈的话,要想做得完备,得考虑8266固件、整个通信协议、WIFI连接、WIFI掉线重连、数据心跳时间等等问题,很麻烦。
话说回来,用python开发web集成MQTT协议、8266使用MQTT固件、MCU程序也用MQTT协议,估计也是不错的开发条件,这样自己做web比较美观、APP也比较好看,但时间投入是巨大的。不考虑协议啊安全啊啥的,简单做个socket通信岂不是美滋滋。
有了上面那些后,下一步,了解MCU开发,上传数据,看看APP变化不;APP改变数据,看看MCU怎么接受。

文件的一些定义:





使用特权

评论回复
20
aoyi|  楼主 | 2021-7-5 15:56 | 只看该作者
上报数据函数。
时间更新函数。




使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

100

主题

3306

帖子

3

粉丝