WIOTA 概述
1. 概述
本文介绍UC8288/UC8088系列的软件架构及使用方式,以帮助客户快速进行二次开发。
2. 工程描述
2.1 源码
终端侧代码:https://github.com/ucchip/wiota_dev_customer 。
基站侧代码:https://github.com/ucchip/wiota_ap_customer 。
异步节点代码:https://github.com/ucchip/wiota_async_customer 。
备用地址:
终端侧代码:https://gitee.com/wiota/wiota_dev_customer 。
基站侧代码:https://gitee.com/wiota/wiota_ap_customer 。
异步节点代码:https://gitee.com/wiota/wiota_async_customer 。
2.2 源码目录结构
2.2.1 终端侧
wiota_dev_customer
├───app
│ ├───codec
│ │ ├───cbor
│ │ ├───cJSON
│ │ ├───coding
│ │ └───fastlz
│ ├───custom_data
│ ├───custom
│ ├───manager
│ └───platfrom
├───applications
├───bin
├───board
├───boot
├───doc
├───libraries
│ ├───HAL_Drivers
│ └───UC8288_HAL_Driver
├───packages
├───PS
│ ├───app
│ └───at
└───rt─thread
- [app] 应用demo,demo演示相关代码,包括频点管理,配对,状态上报,属性上报等。
- [codec] demo编解码相关,包括app协议编解码、数据解压缩、cJSON。
- [cbor] 暂时未使用。
- [cJSON] cJSON相关代码。
- [coding] app协议编解码。
- [fastlz] 数据解压缩。
- [custom_data] 用户数据。
- [custom] 包含用户管理,配对请求和灯控场景、开关场景两个demo示例。
- [manager] 包含配置管理,频点管理等。
- [platfrom] demo通用函数。
- [codec] demo编解码相关,包括app协议编解码、数据解压缩、cJSON。
- [applications] 应用层,包括main函数入口和watchdog。
- [board] 板级支持包。
- [boot] Ymodem下载支持等。
- [libraries] 驱动层,包括串口、I2C、SPI等等。
- [packages] 软件包信息。
- [PS]
- [app] 二次开发提供的接口文件,还包括一个test文件作为使用示例。
- [include] api头文件。
- [lib] WIoTa协议静态库。
- [test] api接口使用示例。
- [at] WIoTa的AT指令。
- [app] 二次开发提供的接口文件,还包括一个test文件作为使用示例。
- [rt-thread] 此目录是rt-thread系统文件,包括调度器、时钟、内存管理等等。
- [bin] 镜像文件。
- [doc] IOTE配套文档。
2.2.2 基站侧
wiota_ap_customer
├───app
│ ├───codec
│ │ ├───cbor
│ │ ├───cJSON
│ │ ├───coding
│ │ └───fastlz
│ ├───custom_data
│ ├───net_passthrough
│ ├───peripherals_manager
│ ├───platfrom
│ └───wiota_manager
│ │ ├───manager_iote_data
│ │ ├───manager_network_data
│ │ ├───manager_wiota
│ │ ├───manager_wiota_base
│ │ └───manager_wiota_to_network
├───applications
├───bin
├───board
├───boot
├───doc
├───libraries
│ ├───HAL_Drivers
│ └───UC8088_HAL_Driver
├───Other
├───packages
│ ├───at_device
│ └───uc_wolfMQTT
├───PS
│ ├───app
│ ├───at
│ └───lib
└───rt─thread
- [app] 应用demo层,demo演示相关代码,包括频点管理,消息转发,状态上报,id管理,网关透传,外设管理等。
- [codec] demo编解码相关,包括app协议编解码、数据解压缩、cJSON。
- [cbor] 暂时未使用。
- [cJSON] cJSON相关代码。
- [coding] app协议编解码。
- [fastlz] 数据解压缩。
- [custom_data] 用户数据。
- [net_passthrough] 网关透传,通过MQTT与服务器交互。
- [peripherals_manager] 外设管理。
- [platfrom] demo通用函数。
- [wiota_manager] 管理相关,包括终端上报数据管理,网络下发的数据管理等。
- [manager_iote_data] 终端上报数据管理。
- [manager_network_data] 网络下发数据管理。
- [manager_wiota] 终端id管理。
- [manager_wiota_base] 基础功能管理。
- [manager_wiota_to_network] AP自身管理。
- [codec] demo编解码相关,包括app协议编解码、数据解压缩、cJSON。
- [applications] 应用层,包括main函数入口。
- [board] 板级支持包。
- [boot] Ymodem下载支持、通过8088SPI烧写8288等。
- [libraries] 驱动层,包括串口、I2C、SPI等等。
- [Other] 包含软件包信息。
- [PS]
- [app] 二次开发提供的接口文件,还包括一个test文件作为使用示例。
- [at] WIoTa的AT指令。
- [lib] WIoTa协议静态库文件。
- [rt-thread] 此目录是rt-thread系统文件,包括调度器、时钟、内存管理等等。
- [bin] 刷机镜像。
- [doc] AP配套文档。
2.2.1 异步节点
与终端侧类似
2.3 内部已使用外设
2.3.1 终端侧
- RTC:定时,闹钟。
- ADC:温度获取。
- uart0: AT cmd。
- uart1: 协议栈LOG。
- timer0: 系统时钟。
- GPIO:index 2/3/7/16/17,用作协议栈状态展示灯。
2.3.2 基站侧
- uart0: AT cmd。
- uart1: 协议栈LOG。
- timer0: 系统时钟。
- timer1: 校准时钟。