赞
踩
进入开发者中心
我这里选择自定义方案
准备官方的固件
准备烧写软件
ESP8266烧写软件非机智云提供
进行烧写
选择通用平台,生成代码可移植性更高,具体如何移植可以参考我之前的博客,如果有需要大家可以留言我录制视频讲解。
## 参考最新版开发指南适配到自己的平台
API 介绍
void gizwitsInit(void)
gizwits 协议初始化接口。
用户调用该接口可以完成 Gizwits 协议相关初始化(包括协议相关定时器、串口的初始化)。
void gizwitsSetMode(uint8_t mode)
参数 mode[in]:WIFI_MODE_TYPE_T 枚举值
参数为 WIFI_RESET_MODE,恢复模组出厂配置接口,调用会清空所有配置参数,恢
复到出厂默认配置。
参数为 WIFI_SOFTAP_MODE 或 WIFI_AIRLINK_MODE,配置模式切换接口,支持SoftAP 和 AirLink 模式。
参数为 WIFI_SOFTAP_MODE 时配置模组进入 SoftAp 模式,
参数为 WIFI_AIRLINK_MODE 配置模组进入 AirLink 模式。
参数为 WIFI_PRODUCTION_TEST,模组进入产测模式。
参 数 为 WIFI_NINABLE_MODE , 模 组 进 入 可 绑 定 模 式 , 可 绑 定 时 间 为
NINABLETIME(gizwits_protocol.h 中声明),默认为 0,表示模组永久可绑定。
void gizwitsGetNTP(void)
获取 NTP 时间接口。
用户调用该接口可以获取当前网络时间,MCU 发起请求,模组回复后将产生 WIFI_NTP
事件,用户可在 gizwitsEventProcess 函数中进行相应处理。
void gizwitsHandle(dataPoint_t *dataPoint)
参数 dataPoint[in]:用户设备数据点。
该函数中完成了相应协议数据的处理及数据上报的等相关操作。
int8_t gizwitsEventProcess(eventInfo_t *info, uint8_t *data, uint32_t
len)
参数 info[in]:事件队列
参数 data[in]:数据
参数 len [in]:数据长度
用户数据处理函数,包括 wifi 状态更新事件和控制事件。
a) Wifi 状态更新事件
WIFI_开头的事件为 wifi 状态更新事件,data 参数仅在 WIFI_RSSI 有效,data 值为
RSSI 值,数据类型为 uint8_t,取值范围 0~7。
b) 控制事件
与数据点相关,本版本代码会打印相关事件信息,相关数值也一并打印输出,用户
只需要做命令的具体执行即可。
int32_t gizwitsPassthroughData(uint8_t *data, uint32_t len)
参数 data[in]:数据
参数 len [in]:数据长度
用户调用该接口可以完成私有协议数据的上报。
3 移植
MCU 通用平台版代码对硬件平台的要求:
平台支持两个串口接口(至少一个),一个负责与 wifi 模组间的数据收发(必须),一个用于调试信息打印(可复用数据收发串口)。
平台支持定时器功能(1ms 精确定时)。
平台支持至少 2K 的 RAM 空间(太少会导致数据协议的处理异常)。
自动化代码生成工具已经根据用户定义的产品数据点信息,生成了对应的机智云串口协议层代码,用户需要移植代码到自己的工程中,完成设备的接入工作。
程序结构框图如下:
gizwits 逻辑和程序主流程已经帮用户实现,图中用黄色小注标明的部分待用户实现并完成代码的移植。
用户的移植工作主要分以下几个方面进行。
实现串口 A 驱动
MCU 方案需要用户实现一个串口,用于设备 MCU 与 WIFI 模组之间数据通信。用户首先需要实现串口接收中断服务函数接口 UART_IRQ_FUN(),该接口调用 gizPutData()函数实
现串口数据的接收并且写入协议层数据缓冲区。另外,用户需要实现串口的发送接口,
uartWrite()函数调用该接口实现设备数据的发送。需要特别注意的是 gizwits_product.c 文件
中 uartWrite()函数是伪函数,用户需根据自己实现的串口发送接口完善 uartWrite(),请注意
相关注释信息,以防出错。
下面以 STM32F103C8T6 平台为例,本例使用 USART2 与模组通信,串口初始化不在
此罗列,中断服务函数和串口发送报文函数实现如下:
/**
//群号:128282599
void userHandle(void)
{
currentDataPoint.valueInfrared = irHandle();
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。