3425|0

1237

帖子

66

TA的资源

纯净的硅(中级)

楼主
 

一步一步移植机智云例程到麒麟座标准版V2.3 [复制链接]

麒麟座开发板使用的MCU是STM32F03RET6,板载了温湿度传感器sht20、三轴加速度传感器adxl345、红外对管tcrt5000等,和机智云Gokit一样,十分适合学习STM32和物联网应用开发。
硬件准备:麒麟座标准版V2.3、ESP8266-12F模块(由于板载的是ESP8266-01模块,Flash只有1MB,机智云的GAgent固件需要4MB的Flash)
软件准备:麒麟座例程:kyLin-V2.3-OneNET-裸机-AirKiss/2.麒麟座V2.3综合应用代码-HTTP

移植过程:
1、 给ESP8266模块烧写机智云GAgent固件,按照这个帖子操作即可(点我);
2、笔者这里使用了正点原子的ESP8266模块,带2.54mm排针接口,方便DIY,接线图如下(串口交叉连接):

WIFI模块烧录好GAgent固件后,其对MCU来说就是串口透传了,怎么和机智云的服务器通信不需要我们管。
根据板子上的外设资源,在机智云开发者中心创建一个产品,并定义下数据点,“数据点即设备产品的功能的抽象,用于描述产品功能及其参数。创建数据点后,设备与云端通讯的数据格式即可确定,设备、机智云可以相互识别设备与机智云互联互通的数据。”下图是本例程定义的数据点,把它导出成了excel,供大家参考。


建立好产品数据点后就可以利用机智云的开发神器-代码自动生成工具直接生成STM32的keil工程了,步骤如下:


然后下载这个工程,解压,把与产品信息、协议有关的文件夹Gizwits拷贝到麒麟座的例程里,其中的User文件夹里面有个main.c文件,这个文件很重要,包含了机智云开发的程序框架:



看看下面这个图,可以知道,把一个单片机通过刷写了GAgent固件的串口模块接入机智云平台很简单,单片机这边只要编3个程序就可以了:定时器1ms中断、串口发送、串口中断接收。这就是MCU和机智云平台的接口,简洁吧!

打开keil工程,添加一个分组,并在魔术棒那里加上编译路径:

机智云那个代码自动生成工具生成的代码还是蛮贴心的,注释的很详细,告诉你要在哪里添加自己的代码,我就在下图的这里添加了点灯的代码,通过手机远程点板子上的4个LED,分别是LED4~7。

功能这么丰富的板子,光点个灯多没意思,再把温湿度数据测下吧,推送到手机显示:

注意上图中的userHandle函数,这些都是自动生成的,这个函数就是处理设备端的数据向云端推送,按照注释来填充就行了,这里我每隔1s采集一次温湿度。
还有个重要的环节就是配网问题,就是WIFI模块怎么获取路由器的SSID和密码,然后去连接它。机智云给出的方案叫AirLink,直接调用API就行了,我这里使用板子上的按键SW2来触发,手机APP使用的是机智云开发的通用版本,通过它可以配网,这个帖子(点我)的末尾有个附件文档就是讲这个APP怎么使用的,我在这里就不啰嗦了。


最后看看效果吧!来几张高清大图,流量党慎入!!!


视频:



源码:
麒麟座V2.3连接机智云综合案例源码.zip (5.45 MB, 下载次数: 46)
手机APP:
IOEDemo_Android_20170125.zip (7.56 MB, 下载次数: 22)
IOEDemo_iOS_Release_20170124.zip (7.05 MB, 下载次数: 19)



此帖出自stm32/stm8论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表