收藏官网首页
查看: 4567|回复: 11

最新的STM32和机智云连接详解

0

主题

5

帖子

318

积分

中级会员

Rank: 3Rank: 3

积分
318
发表于 2020-2-5 23:27:30 | 显示全部楼层 |阅读模式
教您5分钟接入机智云,实现傻瓜式开发
本帖最后由 小妖 于 2020-2-5 23:33 编辑

现在的机智云使用的代码生成和以前不一样了,也就导致之前很多的例程和机智云官方的文档都没办法作为参考了。
作为一个小白,没有一个详细例程,真的很难入门,翻遍了几乎所有的帖子,大多数都是很早之前的,没有参考价值。在这里把我调试成功的例程分享一下,做到了最简单的控制,手机控制STM32板上的LED亮和灭。话不多说,准备开干!

  • 准备一块STM32的开发板,什么型号的都可以,板子上最好有多个按键(这里使用了两个),还有LED灯(可以观察现象),现在的板子都有了串口,没有的就要准备一个USB转TTL的模块(淘宝上自己找,最好准备一个,方便和机智云的调试助手连接)。使用的WIFI模块是机智云的小黑板也就是这个模块,本来是想直接做SoC方案的,实在是没学会,才转用单片机+模块的。
  • 从这里下载模块要烧录的固件https://download.gizwits.com/zh-cn/p/92/94 无标题.png 用的是8266的模块,当然选GAgent for esp8266,具体的烧写方法可以看网上的例程,有很多,需要根据你的模块的实际型号选择烧录选项,这里不多介绍,烧录完成后就要测试烧录的固件是否正常工作,https://download.gizwits.com/zh-cn/p/98/119,这里是机智云的串口调试助手,先下载准备好,后面会用到。
  • 创建我们自己的产品。在我们个人账号下创建一个新的产品,不要太复杂,只要能控制一颗LED就可以,这里不会的可以看看其他的帖子,创建简单的产品还是很容易的,这里只要一个数据点就可以了。 {A81BDCC4-488B-48CC-A1A6-DAA637E5C07D}_20200205221925.jpg 别忘了点上面应用按钮,不然数据点是不会保存的。选择下面的虚拟设备就可以用手机app调试了(简单的项目并没有什么意义,这里不详讲)。最后选择MCU开发,选择独立MCU方案,硬件平台选择其他平台(如果选择STM32的,生成的是HAL库项目),下面的Product Secret是在左边最上面的基本信息里面隐藏的,需要输入账号密码才可以看到,最后把生成的代码下载下来。
  • 测试刚才烧录的GAgent固件是不是能用的。GAgent固件就是配合机智云平台生成的代码使用的,初学者不需要搞懂固件里面的内容。打开我们刚才下载的串口调试助手,现在的版本打开是这个样子的 {A45DEB85-9E5F-4829-93A8-88DBE296173C}_20200205222958.jpg 选择右边的新增按钮,把我们创建产品时的 {D82DC822-9589-4E23-8E9B-4D76534ECBBE}_20200205223151.jpg 这两个数据填入,就可以选择左边的模拟MCU了,这时候就要用USB转TTL模块把8266模块连接到电脑上 {400EF500-5356-494E-AEDD-C5D557E1B167}_20200205223441.jpg ,除了串口号需要修改,其他的没什么要修改的,后面就可以用左下角的指令模拟MCU控制模块了,重启模块-->初始化-->Airlink,就可以使模块进入配网模式,使用手机APP就可以连接了(如果连接失败就要考虑是连接的问题,还是固件烧录错误的问题,还是网络的问题),这里如果有问题,那就不用进行下去了,肯定失败的。连接成功后就表示固件烧录没有问题,网络也没有问题。现在就可以使用手机控制了,上面三个部分,左边是模拟的MCU和8266通信的串口数据,点击每一条数据,中间都会有关于当前数据的说明(还是很贴心的,省的自己一个个数据看了),最右边的就是模拟的接收,手机的控制会显示在这里,这里也可以修改,手机端也会改变。当这一步也成功后,项目也就成功了一半了。
  • 打开我们准备好的STM32的例程(我用的是正点原子的MINI板的例程-ALIENTEK MINISTM32 实验3 串口实验),这个例程已经调好串口了,用起来省事。把我们刚才下载的代码(独立平台的代码), {BBCEE478-CDAA-4DFB-A5BB-E3E7DCAE3137}_20200205224918.jpg 这两个文件夹都要复制到我们选择的例程中,如何添加到项目中可以到网上找(正点原子的讲解很多)。还需要在HARDWARE文件夹下加上LED、按键、定时器、串口(用来和8266通信,不是打印数据的)。下面就根据你选择的串口连接模块和STM32开发板,实际只需要连接电源、GND、串口TX\RX,四根线就可以,其他的需要时候再连接(这里连接上也没用,芯片没有配置)。
  • 修改程序。程序中需要修改几个点。1) {70E120D8-B4CC-415B-A2D7-D7A8D5D4CA0C}_20200205230246.jpg 堆栈大小要修改,不然工作会出问题。2)在和模块通信的串口中断函数里要添加 {EE66DFEA-FFEE-41D8-A89A-B3F50A998963}_20200205230444.jpg gizPutData(&res, 1);//数据写入到缓冲区//用来接收8266发到单片机的数据。3)定时器函数中要添加 {C0151F2B-B54D-4A31-A025-82C53F8A3A8A}_20200205230714.jpg gizTimerMs();这个函数。4) {F5CC4FBB-7BC1-4B58-A653-816C6589205B}_20200205230935.jpg 这里添加我们要控制的LED灯,这样我们才可以用手机控制LED的亮灭。5) {BC6B373B-947E-477A-895D-18BFE46FA3E8}_20200205231149.jpg 这里添加的是单片机发送到8266数据的函数,这样才可以使单片机和8266模块正常通信。
  • 最后别忘了 {FFABC796-367C-4394-85CE-4491DB474EDA}_20200205231458.jpg 勾上这里,剩下的编译后就可以解决了,大多是头文件没有引用、函数没有申明之类的错误了,或是函数重定义了,都好解决(可以参考我发的例程),最后下载到开发板上,通过串口可以看到运行状态,按下配网按键,这个时候就可以使用手机搜索到你的开发板了,剩下的就是不断的增加新的功能了。
  • 这一步很重要,很多时候就是忽略了这里才导致的不成功。其他还有问题可以发出来我们一起讨论。最后附上我自己调试的例程。 ALIENTEK MINISTM32 实验3 串口实验 - WIFI-LED.zip (363.31 KB, 下载次数: 158)

0

主题

5

帖子

318

积分

中级会员

Rank: 3Rank: 3

积分
318
 楼主| 发表于 2020-2-8 12:35:07 | 显示全部楼层
补充一点,很多时候串口提示超时是因为操作的太快,在复位后等待一段时间在配网,就不会出现超时的问题。

0

主题

11

帖子

689

积分

高级会员

Rank: 4

积分
689
发表于 2020-2-22 15:58:00 | 显示全部楼层
不错,写的详细的新人指导, 避免弯路

0

主题

2

帖子

23

积分

新手上路

Rank: 1

积分
23
发表于 2020-3-10 09:22:10 | 显示全部楼层
感谢楼主的无私奉献~很有帮助

0

主题

4

帖子

113

积分

注册会员

Rank: 2

积分
113
发表于 2020-3-18 14:03:42 | 显示全部楼层
校园创客福利
感谢楼主分享,学习了

0

主题

14

帖子

285

积分

中级会员

Rank: 3Rank: 3

积分
285
发表于 2020-3-19 13:55:11 | 显示全部楼层
感谢楼主分享,一直碰到如何用通用固件来开发,学习之后,并且已经连接成功

1

主题

5

帖子

132

积分

注册会员

Rank: 2

积分
132
发表于 2020-4-2 14:34:12 | 显示全部楼层
为什么要用串口3.

点评

没有固定要求,使用串口3是因为有串口的例程可以直接使用。  详情 回复 发表于 2020-4-4 16:05

0

主题

5

帖子

318

积分

中级会员

Rank: 3Rank: 3

积分
318
 楼主| 发表于 2020-4-4 16:05:13 | 显示全部楼层
zxj 发表于 2020-4-2 14:34
为什么要用串口3.

没有固定要求,使用串口3是因为有串口的例程可以直接使用。

0

主题

3

帖子

63

积分

注册会员

Rank: 2

积分
63
发表于 2020-4-21 00:42:05 | 显示全部楼层
楼主你好,方便加Q咨询一下吗?。(STM32+ESP8266+温湿度传感器 接入机智云,有偿。qq:1014082027)

2

主题

6

帖子

262

积分

中级会员

Rank: 3Rank: 3

积分
262
发表于 2020-5-22 14:09:28 | 显示全部楼层
很有用,谢谢分享!

0

主题

2

帖子

55

积分

注册会员

Rank: 2

积分
55
发表于 2020-6-19 11:55:14 | 显示全部楼层
版主,帮我指点一下可以吗?

http://club.gizwits.com/forum.ph ... peid%26typeid%3D188
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

© 2011-2017 Gizwits ( 粤ICP备11090211号 )

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