STM32代码自动生成工具使用说明
1.什么是“代码自动生成工具”
为了降低开发者的开发门槛,缩短开发周期,降低开发资源投入,机智云推出了代码自动生成服务。云端会根据产品定义的数据点生成对应产品的设备端代码。
自动生成的代码实现了机智云通信协议的解析与封包、传感器数据与通信数据的转换逻辑,并封装成了简单的API,且提供了多种平台的实例代码。当设备收到云端或APP端的数据后,程序会将数据转换成对应的事件并通知到应用层,开发者只需要在对应的事件处理逻辑中添加传感器的控制函数,就可以完成产品的开发。
使用自动生成的代码开发产品,就不必再处理协议相关的部分了,开发者可以将节省出来的精力集中在产品的核心功能开发上。
2.支持的平台
自动生成服务支持的硬件方案有:独立MCU方案、SOC方案。其中独立MCU方案支持的硬件平台有:stm32f103c8x、F407、F429、F767平台、arduino uno wifi 通用平台(即“其他平台”);SOC方案支持的硬件平台有:esp8266平台。
MCU方案与SOC方案区别:
[td]
方案 | 说明 |
MCU方案 | 模组负责与云端信息的交互,通过串口与主控板(即MCU)进行通信,需要在MCU上进行协议解析与外设控制的开发。 |
SoC方案 | 节省一颗MCU芯片,利用模组内部资源完成传感器操作和产品逻辑。 |
MCU方案中除了支持STM32平台,还可以将我们生成好的通用平台版代码移植到符合条件的任意平台,从而实现机智云所提供的各种功能(详细移植过程请查看《GoKit3二次开发–通用平台版移植说明》)。
“代码自动生成工具”的使用1.创建产品
登录机智云开发者中心:http://dev.gizwits.com/
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478158998646.png)
点击右上角创建新产品
输入相应的产品信息后点击“保存”。
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478159012724.png)
2.添加数据点
添加相应的数据点
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478159509259.png)
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478159514757.png)
添加成功后点击“应用”
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478159536876.png)
3.生成目标平台代码
注:如果之前没有定义数据点则无法使用自动生成代码服务。
3.1 生成MCU方案代码
定义好产品后,选择左侧服务中的“MCU开发”(假设采用的MCU是STM32F103C8x),选中硬件方案中的“独立MCU方案”,再选择“硬件平台”中的“stm32f103c8x”,最后点击“生成代码包”,等待生成完毕下载即可。
注:如果是其他MCU芯片,请选择“其他平台”选项,然后将生成的代码包移植到使用的平台,移植方法参考《GoKit3二次开发-通用平台版移植说明》。
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478159645300.png)
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478159651968.png)
3.2 生成SoC方案代码
定义好产品后,选择左侧服务中的“SoC开发”(假设使用的SoC芯片是esp8266),选中硬件方案中的“SoC方案”,则选择“硬件平台”中的“esp8266”,最后点击“生成代码包”,等待生成完毕下载即可。
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478159682322.png)
下载完成后解压如下
![](http://docs.gizwits.com/assets/zh-cn/deviceDev/DevSDK/tool/1478159695787.png)