164 lines
3.8 KiB
Markdown
164 lines
3.8 KiB
Markdown
## 项目名称
|
|
|
|
### 姿态传感器
|
|
|
|
## 运行条件
|
|
|
|
> 列出运行该项目所必须的条件和相关依赖
|
|
|
|
* Python==3.14
|
|
* OpenOCD
|
|
* CLion
|
|
* Arm-none-eabi-gcc
|
|
|
|
## 运行说明
|
|
|
|
> 说明如何运行和使用你的项目,建议给出具体的步骤说明
|
|
|
|
* 操作一 `python -m venv .venv`
|
|
* 操作二 `.venv\Scripts\activate`
|
|
* 操作三 `pip install -r .\requirements.txt`
|
|
|
|
## 测试说明
|
|
|
|
> 如果有测试相关内容需要说明,请填写在这里
|
|
|
|
## 技术架构
|
|
|
|
## 项目名称
|
|
|
|
### 姿态传感器
|
|
|
|
## 运行条件
|
|
|
|
> 列出运行该项目所必须的条件和相关依赖
|
|
|
|
* Python==3.14
|
|
* OpenOCD
|
|
* CLion
|
|
* Arm-none-eabi-gcc
|
|
|
|
## 运行说明
|
|
|
|
> 说明如何运行和使用你的项目,建议给出具体的步骤说明
|
|
|
|
1. 下载所有运行条件中提到的文件
|
|
2.
|
|
|
|
## 测试说明
|
|
|
|
> 如果有测试相关内容需要说明,请填写在这里
|
|
|
|
## 技术架构
|
|
|
|
```mermaid
|
|
flowchart TB
|
|
subgraph App["用户程序层 src/"]
|
|
direction LR
|
|
CM7["CM7 导航应用\nmain.c"]
|
|
CM4["CM4 采集应用\nmain_CM4.c"]
|
|
AppSupport["应用支撑\nshell / banner / time_base / elog_port"]
|
|
end
|
|
|
|
subgraph Service["业务功能层"]
|
|
direction LR
|
|
LCFSM["组合导航状态机\nlc_fsm"]
|
|
SensorTask["传感器采集任务\nIMU / GNSS"]
|
|
ProtoApp["消息协议适配\nproto"]
|
|
LogApp["日志与命令行适配"]
|
|
end
|
|
|
|
subgraph Domain["功能模块层"]
|
|
direction LR
|
|
|
|
subgraph Nav["loosely_coupled_navigation"]
|
|
direction TB
|
|
LC["LooselyCoupled"]
|
|
Align["Alignment / Attitude"]
|
|
INS["INS / Mechanization"]
|
|
EKF["EKF"]
|
|
EarthMath["Earth / Math"]
|
|
end
|
|
|
|
subgraph Sensors["sensors"]
|
|
direction TB
|
|
IMU["IMU 统一接口"]
|
|
IMUDriver["ADIS16488 / STIM300 / SCH1633"]
|
|
GNSS["GNSS 统一接口"]
|
|
GNSSDriver["K922 / libnmea"]
|
|
end
|
|
|
|
subgraph Proto["proto"]
|
|
direction TB
|
|
ProtoFile["V0_0_1.proto"]
|
|
NanoPB["nanopb 生成代码"]
|
|
end
|
|
end
|
|
|
|
subgraph BSP["BSP 模块 bsp/"]
|
|
direction TB
|
|
|
|
subgraph BspService["BSP 服务接口层"]
|
|
direction LR
|
|
OpenAMP["OpenAMP"]
|
|
Stream["STREAM"]
|
|
SPI["SPI"]
|
|
Timer["TIMER"]
|
|
Exti["EXTI"]
|
|
Enter["ENTER"]
|
|
end
|
|
|
|
subgraph BspBase["BSP 基础抽象层"]
|
|
direction LR
|
|
IO["IO"]
|
|
RCC["RCC"]
|
|
DMA["DMA"]
|
|
Resource["OpenAMP Resource"]
|
|
end
|
|
|
|
subgraph BspPort["STM32H7xx Port 层"]
|
|
direction LR
|
|
StreamPort["stream_port / stream_uart_port"]
|
|
IOPort["io_port"]
|
|
SPIPort["spi_port"]
|
|
TimerPort["timer_port / time_base_port"]
|
|
ExtiPort["exti_port"]
|
|
OpenAMPPort["openamp_port"]
|
|
RCCPort["rcc_port"]
|
|
DMAPort["dma_port"]
|
|
end
|
|
|
|
subgraph Chip["芯片启动与片上资源层"]
|
|
direction LR
|
|
ChipInit["init_CM4 / init_CM7"]
|
|
IT["stm32h7xx_it"]
|
|
Memory["MPU / SDRAM / sysmem / syscalls"]
|
|
HAL["STM32H7xx HAL / CMSIS"]
|
|
end
|
|
end
|
|
|
|
subgraph Lib["第三方与公共库"]
|
|
direction LR
|
|
ThreadX["ThreadX"]
|
|
CMSISDSP["CMSIS-DSP"]
|
|
Metal["libmetal / open_amp"]
|
|
LwRB["lwrb"]
|
|
ShellLib["microshell"]
|
|
EasyLogger["easylogger"]
|
|
QF["qf-fsm"]
|
|
end
|
|
|
|
App --- Service
|
|
Service --- Domain
|
|
Domain --- BSP
|
|
BSP --- Lib
|
|
```
|
|
|
|
## 协作者
|
|
|
|
> 高效的协作会激发无尽的创造力,将他们的名字记录在这里吧
|
|
|
|
## 协作者
|
|
|
|
> 高效的协作会激发无尽的创造力,将他们的名字记录在这里吧
|