本文档为 Claude Code (claude.ai/code) 提供本代码仓库的工作指导。
本项目是面向配电自动化的 DTU(数据传输单元)嵌入式软件,目标平台为伏羲 T536(ARM Cortex-A55, aarch64)。使用 Xenomai 实时框架,UI 采用 LVGL。
项目使用基于 Makefile 的自定义构建系统,配合 shell 脚本:
# 进入构建脚本目录
cd dtu/dtu_main_t536/sh/t536
# 构建广东 2020 标准版本(默认配置)
./mybuild_for_gw_public_t536 NanWang GD_AREA_ECZD_2020 DCPU_FUXI DMACHINE_NULL
# 标准 DTU 5.0 版本的替代构建脚本
./mybuild_for_std_dtu5.0
构建参数:
$1:输出目录名称(例如:"NanWang")$2:区域宏定义(例如:GD_AREA_ECZD_2020)$3:CPU 类型(例如:DCPU_FUXI)$4:机器类型(例如:DMACHINE_NULL)aarch64-none-linux-gnu-gccdtu_t536 可执行文件(作为内核模块链接)构建生成以下文件:
dtu/dtu_main_t536/dtu_t536:主可执行文件dtu/dtu_main_t536/ko/<app_dir>/:包含 CRC 校验二进制文件的输出目录dtu/dtu_main_t536/app/:主应用程序源代码
main.c:应用程序入口点head.h:包含所有模块头文件的主头文件app_public/:共享/公共代码库
fuxi_public/:平台抽象层rt_lite/:实时操作系统抽象fuxi_bsp/:板级支持包(ADC、GPIO、UART 等)bsp_share/:共享 BSP 工具函数gps/:GPS 模块sys_api/:系统 APIbluetooth/:蓝牙支持wavelib/:波形记录库xdljd/:小电流接地逻辑xenomai/:Xenomai 实时框架头文件和库build/:CMake 构建目录(用于生成 compile_commands.json)rt_lite 抽象提供实时套接字、文件、FIFO配置定义在 dtu/dtu_main_t536/app/defineSys.h:
GD_AREA_ECZD_2020)关键配置宏:
CPU_FUXI:目标 CPU 类型GD_AREA_*:区域/客户特定需求SWITCH_NUM_MAX:最大支持开关数CFG_LINK_104_NUM:IEC104 链路数量CFG_LINK_101_NUM:IEC101 链路数量dtu/dtu_main_t536/app/*.cdtu/dtu_main_t536/app/ui/app_public/fuxi_public/fuxi_bsp/source/app_public/fuxi_public/fuxi_bsp/include/添加新源文件:
.c 文件添加到相应目录dtu/dtu_main_t536/sh/t536/Makefile 中的 OBJS 列表修改构建配置:
dtu/dtu_main_t536/app/defineSys.h 设置特性开关dtu/dtu_main_t536/sh/t536/ 中的构建脚本设置编译选项构建调试:
# 启用详细构建输出
make v=1
# 生成 compile_commands.json 用于 IDE 支持
# (使用 bear:bear -- make -j6)
dtu/dtu_main_t536/app/main.cdtu/dtu_main_t536/app/Appconfig.cdtu/dtu_main_t536/app/defineSys.happ_public/fuxi_public/fuxi_bsp/include/bspconfig.hdtu/dtu_main_t536/sh/t536/mybuild_for_gw_public_t536dtu/dtu_main_t536/sh/t536/Makefile