3 KiB
RTL8710BX SDK 架构说明
本文针对已验证的 smart_outlet@mk3080 构建目标说明仓库的主要模块和依赖关系。
模块分层
1. 产品应用层
路径:Products/example/smart_outlet/
包含应用入口、LinkKit 主循环、厂商板级业务、设备状态、工厂模式、属性上报和消息处理。smart_outlet.mk 是该目标的源码与组件清单。
2. 云与通用框架层
路径:Living_SDK/framework/
主要包括 LinkKit SDK/HAL、网络管理、OTA、事件循环、CLI 和公共框架。产品应用通过组件依赖进入最终静态库和固件。
3. AliOS 内核与系统服务层
路径:Living_SDK/kernel/、Living_SDK/utility/
提供 Rhino 内核、初始化流程、VFS、KV、事件循环、网络协议与 cJSON 等基础能力。Living_SDK/kernel/init/aos_init.c 负责从内核初始化过渡到产品入口。
4. RTL8710BN 平台层
路径:Living_SDK/platform/mcu/rtl8710bn/
包含启动适配、HAL、外设驱动、Wi-Fi 厂商库、链接脚本、镜像处理逻辑和预编译 Realtek 库。rtl8710bn.mk 定义平台组件与系统配置。
5. MK3080 Board 层
路径:Living_SDK/board/mk3080/
mk3080.mk 将目标绑定到 Cortex-M4 与 rtl8710bn MCU family,并提供 Board 源码、Boot/ATE 镜像、设备名称和链接后处理配置。
6. 构建与固件打包层
路径:build.sh、tools/mk3080.sh、Service/version/
build.sh 根据 Board 将 MK3080 路由到 tools/mk3080.sh。后者先调用 aos-cube 构建 AliOS 静态库,再构建版本组件与产品应用,最终链接 ELF 并生成 BIN、HEX、OTA 和全分区镜像。
初始化流程
Realtek startup / app_start.c
-> rtl8710bn aos.c::main
-> aos_init
-> create sys_init_func task
-> aos_start
-> sys_init_func
-> board and system initialization
-> aos_kernel_init
-> VFS / CLI / KV / framework initialization
-> application_start
-> NetMgr / vendor / diagnosis / OTA initialization
-> register Wi-Fi and cloud event filters
-> Wi-Fi gets IP
-> create linkkit task
-> linkkit_main
-> aos_loop_run
构建依赖关系
smart_outlet
-> LinkKit SDK and HAL
-> NetMgr / common framework / OTA / cJSON / CLI
-> AliOS kernel initialization and Rhino
-> board_mk3080
-> rtl8710bn platform, HAL and vendor libraries
-> ARM GNU linker scripts and firmware packers
最终 MAP 文件包含 smart_outlet、kernel_init、board_mk3080、rtl8710bn、libiot_sdk、netmgr、ota、rhino 等模块,可与上述依赖关系交叉验证。
架构边界
- 本说明只覆盖
smart_outlet@mk3080。 - 仓库中的其他 Board、示例、第三方源码和预编译库没有逐一验证。
- 静态架构和构建证据不能替代硬件启动、联网、OTA 与外设测试。