本帖最后由 Jacket 于 2023-7-15 15:59 编辑
一、创建产品 二、自动生成MCU SDK *本次选择独立MCU方案 *芯片根据用户所使用的芯片型号来选择(本次选用 STM32F103C8x) *将Product Secret(PS)的内容复制进去 *点击生成代码包 三、下载并编辑代码 (1)点击下载 (2)解压缩并打开工程 *打开MCU_STM32F103C8x_source->MDK-ARM->STM32F103C8x.uvprojx (3)MCU SDK文件内容目录结构 *黑色标注部分为STM32f103cx8硬件平台开发基本文件 (4)主要文件说明 Gizwits_product.c | 该文件为产品相关处理函数,如gizwitsEventProcess()数据点事件处理函数。 | | 该文件为gizwits_product.c的头文件,存放产品相关宏定义 | | | | 该文件为gizwits_protocol.c对应头文件,相关API的接口**均在此文件中。 |
(5)协议API介绍 Void gizwitsInit(void) | | Void gizwitsSetMode(unit8_t mode) | 参数mode[in]:支持0、1、2、3、4和5,其他数据无效。参数为 0,恢复模组出厂配置接口,调用会清空所有配置参数,恢复到出厂默认配置; 参数为 1 时配置模组进入 SoftAp 模式; 参数为 2 配置模组进入 AirLink 模式; 参数为 3 配置模组进入 产测 模式; 参数为 4 配置模组进入 可绑定 模式; 参数为 5 请求模组重启。 | 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) 控制事件与数据点相关,本版本代码会打印相关事件信息,相关数值也一并打印输出,用户只需要做命令的具体执行即可。 |
(6)main.c中的函数 HAL_Init() | 平台相关的硬件初始化 (非 MCU SDK API,不同的平台名称可能不同) | | 平台相关的硬件初始化 (非 MCU SDK API,不同的平台名称可能不同) | | 用户相关的初始化,如:外设驱动初始化、打印串口初始化 (非MCU SDK API,不同的平台名称可能不同) | | | | 用户事件回调函数,用户可以自定义事件在该函数中完成相应的协议处理。(非MCU SDK API,不同的平台名称可能不同) | | |
|