## 项目名称 ### 姿态传感器 ## 运行条件 > 列出运行该项目所必须的条件和相关依赖 * 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. ![[动画.gif]] ## 测试说明 > 如果有测试相关内容需要说明,请填写在这里 ## 技术架构 ```mermaid flowchart TB Root["CMakeLists.txt\n生成 polaris_${CORE}"] subgraph App["应用层 src/"] direction TB CM4Main["CM4: main_CM4.c\nIMU/GNSS 采集任务"] CM7Main["CM7: main.c\n导航事件调度任务"] LCFSM["lc_fsm.c\n组合导航状态机"] Shell["shell.c / banner.c / time_base.c / elog_port.c"] end subgraph Sensors["传感器层 sensors/"] direction TB IMU["imu\n统一 IMU 接口"] IMUDrv["ADIS16488 / STIM300 / SCH1633 驱动"] GNSS["gnss\nK922 + NMEA 解析"] NMEA["libnmea"] end subgraph Nav["组合导航库 loosely_coupled_navigation/"] direction TB LC["LooselyCoupled"] Align["Attitude / Alignment"] INS["ins"] EKF["ekf"] EarthMath["Earth / Math"] end subgraph Comm["核间通信与数据格式"] direction TB OpenAMP["OpenAMP / RPMsg\nimu_ready, gnss_data"] Proto["proto + nanopb\nV0_0_1.proto"] end subgraph BSP["BSP 与平台层 bsp/"] direction TB Board["target/chip: STM32H747 / STM32H7xx"] Drivers["GPIO / UART / SPI / DMA / EXTI / Timer"] RTOS["ThreadX"] Metal["libmetal + open_amp"] CMSIS["CMSIS / CMSIS-DSP"] Utils["lwrb / microshell / easylogger"] end subgraph Lib["公共库 lib/"] direction TB QF["qf-fsm"] Log["easylogger"] end Root --> CM4Main Root --> CM7Main Root --> Shell Root --> QF CM4Main --> IMU IMU --> IMUDrv CM4Main --> GNSS GNSS --> NMEA CM4Main --> OpenAMP OpenAMP --> CM7Main CM7Main --> LCFSM LCFSM --> LC LC --> Align LC --> INS LC --> EKF LC --> EarthMath CM7Main --> Proto CM4Main --> Log CM7Main --> Log Shell --> BSP IMU --> BSP GNSS --> BSP Nav --> BSP Comm --> BSP Lib --> BSP ``` ## 协作者 > 高效的协作会激发无尽的创造力,将他们的名字记录在这里吧 ## 协作者 > 高效的协作会激发无尽的创造力,将他们的名字记录在这里吧