net_env_project/README.md

65 lines
2.0 KiB
Markdown
Raw Permalink Normal View History

2026-06-18 05:01:37 +00:00
# Avionics Network Communication Environment (机载系统网络通信环境)
2026-06-18 04:42:27 +00:00
2026-06-18 05:01:37 +00:00
## 概述
本工程实现了机载系统网络通信环境的三个核心软件单元,满足 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+
### 编译步骤
```bash
# 进入工程目录
cd codegen-runs/codegen_dde59ff85c1e4e4797ab9a9c6483a125
# 配置
mkdir -p build && cd build
cmake ..
# 编译主程序
cmake --build . --target avionics_network_env
# 编译测试程序
cmake --build . --target basic_test
```
### 运行
```bash
# 运行主程序
./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` |