STM32 NucleoL496ZG智能灯案例
本帖最后由 bigfanofloT 于 2017-4-5 11:37 编辑一、简介
接线图:ESP8266模块TX-----àD0RX-----àD1WS2812LED Din-----àD11机智云智能设备接入原理:硬件厂商对硬件智能化的第一步是让设备能够联网,GAgent是机智云提供的一款兼容国内主流Wi-Fi模块、移动网络模块的固件。GAgent主要的作用是数据转发,是设备数据、机智云、应用端(APP)的数据交互桥梁。简单的说就是,WiFi模块里面烧录了一个叫GAgent的固件,然后这个WiFi模块对用户的MCU就是串口透传了,复杂的协议、交互都给封装了。二、云端配置
在机智云开发者中心创建一个名字叫NucleoL496智能灯的产品并添加数据点,数据点是设备产品的功能的抽象,用于描述产品功能及其参数。创建数据点后,设备与云端通讯的数据格式即可确定。因为我们手机APP的功能需求是控制LED的开关和调色,把以上进行抽象,依次为开关量下发控制、数值量下发控制。所以建立如下数据点(详细的数据点见附件excel):三、MCU端编程
在服务栏目->MCU开发,我们选择独立MCU+WiFi方案:点击生成代码包即可;下载生成的工程,解压,其中 Gizwits文件夹下包含4个文件,这些是机智云协议层的,已包含云端创建的数据点信息并留出用户控制的接口;
User目录下的main.c文件,包含了程序的框架。通过此图,通过此图知道要把任意MCU通过WIFI模块连上机智云,只需实现3个简单的接口函数:串口发送、中断接收1字节数据,定时器1ms中断“心跳”。
首先通过STM32CubeMX配置下,这里需要配置SPI用来驱动WS2812 LED,串口3为9600-N-1与WIFI模块通信,开启接收中断,串口1为115200-N-1用于串口打印调试日志,定时器6和7都配置为1ms中断,一个用于心跳,一个用于定时扫描按键。详细的配置见附件里面的PDF报告。首先添加2个分组,分别是协议层和硬件驱动层:如下是时基接口,在1ms中断服务函数里面调用gizTimerMs():如下是串口发送1字节数据接口:如下是串口中断接收1字节接口,在串口中断服务回调函数里面调用gizPutData()把数据写入缓冲区:如下是用户调用配置入网函数,对于大多数智能设备并没有显示屏和键盘等输入输出装置,因此需要通过手机APP来进行配置路由器的SSID和密码,我这里使用了板载的蓝色用户按键长按来触发:如下是用户业务代码的填充,就是开关灯和设置灯的颜色:附上RGB 24位颜色选择表:最后堆栈Heap和Stack的设置,需要修改大一些,可分析map文件确定。四、手机APP
可以直接下载通用版本的APP,就是简介部分那样的界面,包含基本功能,如果需要定制自己的APP,例如,需要修改APP图标、启动Logo、主题颜色、其它功能模块等,就需要使用APP代码自动生成工具了。如下图,这里可下载通用版本APP:如果想定制自己的APP,需要先在应用配置界面添加应用,我这里添加个安卓的:添加好后就是这样:接着在应用开发里再选择平台和应用名字,Product Secret可在产品信息/基本信息栏查看:点击生成代码后,一会就生成好了。下载解压,可看到提供了Eclipse和AS两种ID E的SDK以及说明教程:APP二次开发就不废话了,有需要的自己根据说明操作即可。视频:http://player.youku.com/player.php/sid/XMjY4ODM2MzU0MA==/v.swf附件下载:1.工程源码(包含STM32CubeMX配置PDF报告):文件太大,需要先解压zip,再使用7zip解压**** Hidden Message *****2.数据点excel:
围观 疯狂的小白兔 发表于 2017-4-16 14:11
我需要你的帮助 楼主
啥问题呢,看我签名,加机智云交流群哦 bigfanofloT 发表于 2017-4-16 14:40
啥问题呢,看我签名,加机智云交流群哦
不不不gghhgjghj 附上ws2812b rgb led驱动的详解http://club.gizwits.com/thread-5382-1-1.html 大神好,能演示一下添加定时代码吗?如何实现定时,看了论坛内的智能插座,不是很明白,谢谢! 学习了:lol:lol It's good for study! Thanks a lot.
辛苦啦,谢谢哦 666我的听说暗示法撒阿什顿飞 尝尝鲜
dfcdsvfsdvgfdvsdg :)66666666666 感谢分享,借鉴学习。 学习学习6666666666666 我需要你的帮助 楼主 STM32是官方的开发板吧,下载参考下和8266的连接 hotcoffee 发表于 2017-4-27 16:45
STM32是官方的开发板吧,下载参考下和8266的连接
是滴 hhhhhhhhhhhhhhhhhh 下下来看看,学习学习 啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦
谢谢楼主