Ai-Thinker-Open_RTL8710BX_A.../docs/CODE_ENTRY.md
2026-08-07 15:15:33 +08:00

59 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# RTL8710BX SDK 代码入口说明
本文说明已验证目标 `smart_outlet@mk3080` 的启动入口、应用入口和云业务入口。行号基于原始提交 `27b3e2883d5801551c6919bf405583919d2f3f08` 加编码兼容修复后的源码。
## 1. 平台入口
文件:`Living_SDK/platform/mcu/rtl8710bn/aos/aos.c`
- `main`:第 157 行Realtek 启动代码进入 AliOS 的平台主入口。
- `main` 在第 173 行创建 `sys_init_func` 初始化任务。
- `main` 在第 177 行调用 `aos_start` 启动内核调度。
- `sys_init_func` 在第 146 行调用 `aos_kernel_init`
上游 Realtek 启动文件 `Living_SDK/platform/mcu/rtl8710bn/sdk/component/soc/realtek/8711b/cmsis/device/app_start.c` 最终调用 `main`
## 2. AliOS 内核入口
文件:`Living_SDK/kernel/init/aos_init.c`
- `aos_kernel_init`:第 267 行。
- 该函数初始化 VFS、CLI、KV、网络与框架服务。
- 第 334 行调用产品提供的 `application_start`
## 3. 产品应用入口
文件:`Products/example/smart_outlet/app_entry.c`
- `application_start`:第 665 行。
- 初始化日志级别、设备元数据、网络管理、厂商适配、诊断、OTA、事件过滤器和业务任务。
- Wi-Fi 事件处理函数 `wifi_service_event` 在获得 IP 后,于第 121 行创建 `linkkit` 任务。
- `application_start` 最终在第 729 行进入 `aos_loop_run` 事件循环。
## 4. LinkKit 业务入口
文件:`Products/example/smart_outlet/smart_outlet_main.c`
- `linkkit_main`:第 623 行。
- 负责设备元数据、LinkKit 初始化、云端连接及属性/事件业务循环。
产品构建清单 `Products/example/smart_outlet/smart_outlet.mk` 明确包含 `app_entry.c``smart_outlet_main.c`、厂商适配、状态管理、属性上报和消息处理源码,并依赖 LinkKit、HAL、NetMgr、cJSON 与 OTA 组件。
## 5. 最终产物验证
在验证提交 `bba690e6a8c6e6c4c6ccd9bd14b320a68957b006` 的最终 ELF 上执行:
```bash
arm-none-eabi-nm out/smart_outlet@mk3080/smart_outlet@mk3080.elf \
| grep -E ' (application_start|aos_kernel_init|linkkit_main)$'
```
确认三个符号均为全局 Text 符号:
```text
08020c1c T aos_kernel_init
0801c668 T application_start
0801de04 T linkkit_main
```
MAP 文件同时显示它们分别来自 `kernel_init.a(aos_init.o)``smart_outlet.a(app_entry.o)``smart_outlet.a(smart_outlet_main.o)`,因此入口说明不只是文件名推断,而是已链接到最终固件的证据。