正点原子精英版STM32F103,接入机智云创建一个iot工程
经常被问到正点原子精英版怎么接入机智云,本文博主详细记录了如何使用正点原子精英版连上机智云,创建一个IoT开发工程。若你有好的案例,想和IoT爱好者们分享,欢迎投稿,一经采纳,我们将送出IoT相关礼品一份。投稿邮箱:club@gizwits.com,微信:iot-maker1、硬件准备
正点原子精英板 (STM32F103c8t6也行)WIFI模块使用esp8266传感器:直接用精英板上带着的光敏传感器和两个LED灯2、ESP8266固件烧写
可以到机智云淘宝店购买开发板,就不用单独烧写固件了:https://shop159680395.taobao.com/?spm=2013.1.0.0.51555c60cck4no
ESP8266烧写机智云的官方固件,方便ESP8266与机智云进行通信。ESP8266有两种,包括安信可12F版本(左图)和汇思锐12H版本(右图)。https://club.gizwits.com/data/attachment/forum/202105/25/152347wvmztnuq6qwgvvtq.jpg.thumb.jpg
这两个文件都是有包含GAgent的应用程序固件,唯一的区别就是(将固件GAgent_00ESP826_04020023_17032418命名为①,GAgent_00ESP826_04020023_17032418_combine命名为②进行指向,后面没做说明都是一样)下载①固件时需要同时配合3个固件一起,那3个固件呢?
分别是boot、esp_init_data_default、blank(这3个固件在乐鑫官方固件烧写工具文件夹中可以找到,等下会有说明),总的来说就是下载4个固件,需设置4个固件地址,步骤上可能会比较繁琐,而且下载地址容易配置出错,而②的话是已经把4个固件打包成1个固件,方便下载。
固件的下载需要其硬件的支持,我们可以用精英板上的CH340模块,就是下图红色框框所示部分。
https://club.gizwits.com/data/attachment/forum/202105/25/152413n13v0hpp222wqhoo.jpg.thumb.jpg
它其实就相当于一个USB to TTL模块,只不过正点原子把他集成上去了,而且改进了,串口下载程序的时候不用拔BOOT0的跳线帽,当然给8266烧写固件用这个也可以。接下来,先将板子上USART1的两个跳线帽给拔出,如图
https://club.gizwits.com/data/attachment/forum/202105/25/152431jjajlfpwijawwcqa.jpg.thumb.jpg再将ATK-ESP8266模块与精英板子用杜邦线按照表进行连接。
https://club.gizwits.com/data/attachment/forum/202105/25/152449vbbqwzmzkstz7sxs.png.thumb.jpg
注意:下载时IO_0引脚必须保持与GND的连接。这也是用USB To TTL模块的不好处,因为模块上只有一个GND。固件和硬件连接都准备后,接下来我们就可以进行固件的烧写了。这里需注意一下,ATK-ESP8266 安信可12F版和汇思锐12H版在使用烧写固件前需修改下SPI的模式。修改方式如图。
https://club.gizwits.com/data/attachment/forum/202105/25/155237or8v86qclzdl44c8.png.thumb.jpg
下载时请根据所用板本而进行SPI模式选择,接下来我们将以安信可12F版本为例进行讲解。打开刚刚解压出来的烧写工具,下载①固件(GAgent_00ESP826_04020023_17032418)按照图1所示设置下载,如果下载②固件(GAgent_00ESP826_04020023_17032418_combine)则按照图2所示设置进行下载。(注意:汇思锐12H版除了SPI MODE选项不一样,其他的都一样)
https://club.gizwits.com/data/attachment/forum/202105/25/155408lg1x4ad7x9d5lpfx.png.thumb.jpg
https://club.gizwits.com/data/attachment/forum/202105/25/155418sps3323mm7q7p3nq.png.thumb.jpg
按照以上步骤设置后,点击“START”按钮
https://club.gizwits.com/data/attachment/forum/202105/25/155433vhopqngg9c9phzqg.png.thumb.jpg
ESP8266内部将自动进行一次复位,复位成功后将会出现如下信息,表示模块正在进行烧写,如图
https://club.gizwits.com/data/attachment/forum/202105/25/155451osvw108agxmxpxcx.png.thumb.jpg
等待一段时间后,出现“FINISH”字样表示烧写成功,如图
https://club.gizwits.com/data/attachment/forum/202105/25/155503ntyekhccy5dahyh5.png.thumb.jpg
烧写完成后,需将板子上USART1排针接口重新用跳线帽连接,连接关系:PA9(T)-RXD、PA10(R)-TXD,如图
https://club.gizwits.com/data/attachment/forum/202105/25/155530aakho64a6ang5am4.png.thumb.jpg
烧写了Gagent固件后ESP8266模块上原来自带的AT指令功能会被覆盖,对此,我们不用担心,在正点原子的ATK-ESP8266 WIFI模块资料文件夹下->ESP8266相关资料->V1.3.0烧写及说明资料中,有教我们如何刷回AT固件,重新又变成我们熟悉的AT指令WIFI。固件烧写完成之后我们把ESP8266与STM32进行连接,使用精英板直接插在ATK MODULE接口即可,使用其他板子的同学按照下表连接
https://club.gizwits.com/data/attachment/forum/202105/25/155550wkkyv4idpik0nkph.png.thumb.jpg
硬件部分完成了。
3,硬件部分
3.1软件部分——创建产品生成MCU代码包
我以一个远程读取光照强度和开关灯的例子讲解,我一边做一边写,硬件直接使用板子上带的LED和光敏传感器,光敏传感器代码可以在我之前的博客里找到。
Step1:登陆机智云平台,创建一个智能产品
https://club.gizwits.com/data/attachment/forum/202105/25/155644ylull9gcu9oucjty.png.thumb.jpg
https://club.gizwits.com/data/attachment/forum/202105/25/155810y0ww4i4zsa4ep8p0.png.thumb.jpg
请注意:创建一个自定义版本的Demo吧,方便创建数据点。
Step2:添加数据点(添加一个光照强度数据点,因为只远程监控,所以选择只读就可以。远程控制LED开关设置可写与布尔值),并应用https://club.gizwits.com/data/attachment/forum/202105/25/155828puxfayug3xsxju9s.png.thumb.jpg
https://club.gizwits.com/data/attachment/forum/202105/25/155941k0gypyu70ytzyeyq.png.thumb.jpg
Step4:下载官方的Demo APP进行虚拟设备测试和后面的实际设备测试
https://club.gizwits.com/data/attachment/forum/202105/25/155905ys6xxpy7zyxse3pw.gif
然后点击虚拟设备,启动虚拟设备https://club.gizwits.com/data/attachment/forum/202105/25/160020vp0czhbiz8ibhlii.png.thumb.jpg
然后我们定义的数据点就出来了3.2软件部分——MCU代码移植首先先让机智云自动生成数据点和设备接入等的代码,然后移植到工程当中。Step1:点击MCU开发,选择独立MCU方案,硬件平台选择其他平台,点击生成代码包。
https://club.gizwits.com/data/attachment/forum/202105/25/160038b9020b23f566e60e.png.thumb.jpg
下载代码包,解压后,压缩包内包含以下文件,我们只使用Gizwits和Utils两个文件夹,并复制
https://club.gizwits.com/data/attachment/forum/202105/25/160056s7djzms1msdlo58m.png.thumb.jpg
粘贴到光敏传感器工程下(代码可以去我之前的博客中下载),USMART文件夹没用,删了就行
https://club.gizwits.com/data/attachment/forum/202105/25/160123z7za552z5f0tk5qf.jpg.thumb.jpg
在HARDWARE文件夹下粘贴我给的压缩包里的TIMER和USART3
https://club.gizwits.com/data/attachment/forum/202105/25/160144ig5w5ktpawwq551y.png.thumb.jpg
把刚才添加的文件添加到工程里
https://club.gizwits.com/data/attachment/forum/202105/25/160211iyxqiw3pqqqp9pxw.png.thumb.jpg
Step2:开始修改代码
接下来对gizwits_product.c和gizwits_protocol.h以及main.c进行小小的修改,同样使用我提供的压缩包里对应文件名的文件,按照我标的每一处要求,添加的就添加,删除的就删除,修改的就修改非常容易理解,将程序下载到开发板,配置连接的时候先按开发板的KEY1键,然后Demo APP选择添加设备
原文链接:https://blog.csdn.net/tichimi3375/article/details/80292336
页:
[1]