1.创建产品
2.编辑数据点:
名字只能为英文
3.继续新建数据点
4.手机app
机智云app扫码,可以在手机上看到数据
5.界面如图所示
6.生成移植代码包
7.点击下载
8.将图中所选中的两个文件夹复制到工程文件中
9.在Keil软件中添加对应的路径
10.添加成功
11.实现串口A驱动:注意添加对应的.h文件
MCU 方案需要用户实现一个串口, 用于设备 MCU 与 WIFI 模组之间数据通信。 用户首先需要实现串口接收中断服务函数接口 UART_IRQ_FUN(), 该接口调用 gizPutData()函数实现串口数据的接收并且写入协议层数据缓冲区。 另外, 用户需要实现串口的发送接口, uartWrite()函数调用该接口实现设备数据的发送。 需要特别注意的是 gizwits_product.c 文件中 uartWrite()函数是伪函数, 用户需根据自己实现的串口发送接口完善 uartWrite(), 请注意相关注释信息, 以防出错。
12.串口写操作, 发送数据报文(报文数据中遇 0xFF 需要用 0x55 转义)到 WiFi 模组
13.实现定时器
协议层使用到了一个系统时间, 该事件单位为毫秒, 所以要求用户实现一个毫秒定时器,并且实现中断服务函数 TIMER_IRQ_FUN(), 该函数调用 gizTimerMs()实现协议层系统时间的维护
14.实现芯片复位函数
根据串口协议文档规定, 模组可以发送命令复位设备 MCU, 所以用户需要实现mcuRestart()接口完成设备的复位。
15.实现串口打印驱动
如果用户需要打印日志调试信息, 要求用户实现 printf 函数。协议层将用 GIZWITS_LOG宏替代 printf, 进行相关信息的打印。 如果用户不使用日志调试, 那么需要将协议层相关日志打印部分的代码屏蔽掉方可运行。 如果用户不使用日志调试, 遇到问题请咨询机智云工程师
16.实现配置入网
模组支持 SoftAp 和 AirLink 两种方式配置入网, 相应接口为 gizwitsSetMode(), 建议采用按键的方式, 相应的按键动作触发执行具体的模式设置。另外, 可以通过 gizwitsSetMode()接口复位模组, 恢复默认出厂设置。
17.实现下行动作执行
18.在代码包中找到主函数的初始化
19.实现上行数据采集
该工程代码默认在 Gizwits/gizwits_product.c 文件中 userHandle()函数实现传感器数据采集, 并且该函数在 while 循环执行, 原则上用户只需要关心如何采集数据。 特别提醒,默认 while 循环执行速度较快, 需要针对不同的需求, 用户可调整数据点数据的采集周期和接口实现位置, 预防由于传感器数据采集过快引发的不必要的问题。 数据点变量的初始化见Gizwits/gizwits_product.c 文件 userInit 函数, 待用户完善。
20.实现模组状态处理
参考接口 gizwitsEventProcess(), 本版软件已经将 wifi 状态数据转换成了 event, 开发者仅关注相应事件即可。 用户可以通过获取到的 WIFI 状态做相应的逻辑处理。