|
|
||
|---|---|---|
| include | ||
| src | ||
| tests | ||
| .gitignore | ||
| CMakeLists.txt | ||
| README.md | ||
| events.ndjson | ||
| generation.json | ||
README.md
Avionics Network Communication Environment (机载系统网络通信环境)
概述
本工程实现了机载系统网络通信环境的三个核心软件单元,满足 GJB 2786A-2009 和 GJB 438C-2021 军用软件开发标准要求,支持在 Windows 11 和 Ubuntu 20.04 双操作系统环境下编译运行。
模块结构
| 模块 | 命名空间 | 说明 |
|---|---|---|
| DAU (数据采集单元) | dau |
基础通用通讯功能:多总线数据接收、ID 过滤、错误帧处理、睡眠/唤醒管理、总线负载监控 |
| PPU (协议处理单元) | ppu |
协议兼容与互通信:CAN2.0 ↔ CANFD 协议转换,ARINC825 标准兼容 |
| DSU (数据存储单元) | dsu |
数据存储与回放:缓冲写入、磁盘故障告警与路径切换、数据查询与按时序回放 |
编译方法
前置条件
- CMake >= 3.16
- 支持 C++17 的编译器(GCC >= 7, Clang >= 6, MSVC 2019+)
编译步骤
# 进入工程目录
cd codegen-runs/codegen_dde59ff85c1e4e4797ab9a9c6483a125
# 配置
mkdir -p build && cd build
cmake ..
# 编译主程序
cmake --build . --target avionics_network_env
# 编译测试程序
cmake --build . --target basic_test
运行
# 运行主程序
./avionics_network_env
# 运行测试
./basic_test
接口清单
| 标识 | 描述 | 实现函数 |
|---|---|---|
| IF-HW-001 | 物理信号接口 (Byte Array / Integer) | dau::DAU_Process |
| IF-CTRL-001 | TCP/IP 控制接口 (JSON String) | 预留 |
| IF-BUS-001 | CAN/CANFD 总线接口 (Struct) | ppu::PPU_Convert, ppu::PPU_Check |
需求覆盖
| 需求标识 | 需求名称 | 实现函数 |
|---|---|---|
| SRS-F-01-001 | 基础通用通讯功能 | dau::DAU_Process, dau::DAU_SetSleep, dau::DAU_GetBusLoad |
| SRS-F-01-002 | 协议兼容与互通信功能 | ppu::PPU_Convert, ppu::PPU_Check |
| SRS-F-02-001 | 数据存储功能 | dsu::DSU_Write, dsu::DSU_CheckDisk |
| SRS-F-02-002 | 数据管理与回放功能 | dsu::DSU_Query, dsu::DSU_Replay |