# SmartKIT-ESP出厂程序-标准套餐 **Repository Path**: xiaoduming/iot ## Basic Information - **Project Name**: SmartKIT-ESP出厂程序-标准套餐 - **Description**: 这个是学习机智云Iot开发的代码 - **Primary Language**: C - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-06-30 - **Last Updated**: 2025-11-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SmartKIT-ESP出厂程序-标准套餐 #### 介绍 这个是学习机智云Iot开发的代码 #### 机智云主要的文件 |文件|说明| |:-:|:-:| |Gizwits_product.c|该文件为产品相关处理函数,如gizEventProcess()平台相关硬件初始化,如串口、定时器等。| |Gizwits_product.h|该文件为gizwits_product.c的头文件,存放产品相关宏定义如:HARDWARE_VERSION、SOFTWARE_VERSION| |Gizwits_protocol.c|该文件为SDK API接口函数定义文件| |Gizwits_protocol.h|该文件为gizwits_protocol.c对应头文件,相关API的接口声明均在此文件中。| #### 机智云协议主要的函数 |API名称|API功能| |:-:|:-:| |Void gizwitsInit(void)|gizwits 协议初始化接口。用户调用该接口可以完成 Gizwits 协议相关初始化(包括协议相关定时器、串口的初始化)。| |Void gizwitsSetMode(unit8_t mode)|参数mode[in]:仅支持0,1和2,其他数据无效。参数为 0,恢复模组出厂配置接口,调用会清空所有配置参数,恢复到出厂默认配置; 参数为 1 时配置模组进入 SoftAp 模式; 参数为 2 配置模组进入 AirLink 模式。| |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) 控制事件与数据点相关,本版本代码会打印相关事件信息,相关数值也一并打印输出,用户只需要做命令的具体执行即可。| #### 通信协议格式 |包头(2Byte)|包长(2Byte)|命令(1Byte)|包序号(1Byte)|Flags(2Byte)|有效负载(xByte)|校验和(1Byte)| |:-:|:-:|:-:|:-:|:-:|:-:|:-:| |0xFFFF|0x####|0x##|0x##|0x####|0x##......|0x##| 注: * 包头 (1)包头固定为0xFFFF,为一包数据的同步头,表示一包的开始; (2)非包头部分,如果出现0xFF的数据内容,对于发送方,需要在0xFF后添加0x55。对于接收方,如检测到非包头部分出现0xFF,需 要把紧跟其后的0x55移除; (3)0xFF后面增加的0x55,既不计入包长度,也不计入校验和的计算; * 包长度 (1)由两个字节(2B)组成。从命令开始一直到校验和的字节长度(包括命令和校验和); * 包序号 (1)由命令发起方给出,从0开始递增,超过255后继续从0开始。命令接收方回复ACK消息时,该字段填充接收到的sn; * flags (1)分为高字节和低字节,比如falg值为0x0A0B,0A是高字节,0B是低字节;高字节是通讯协议级别的标记定义,是协议命令间通 用的标记,低字节是本条协议内的标记定义,只影响本条协议,不具通用性,具体含义每条命令单独定义; * 有效负载 由产品定义决定,具体产品的具体业务指令协议内容; * 校验和 (1)对数据包中的包长度开始一直到有效负载的字节求和取余数,即sum(包长度...有效负载)%256; #### 软件架构 软件架构说明 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 码云特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)