#ifndef IST8310_H #define IST8310_H /* C 板板载磁力计 IST8310 —— 硬件 I2C3(PA8/PC9, CubeMX 已配置)版 * DRDY=PG3(EXTI3), RSTN=PG6 * 注:当前 AHRS 仅做 6 轴融合(磁力计数据未参与,与 legacy 一致),此模块用于 * 健康检查与后续 9 轴扩展; * legacy/早期移植版用软件模拟 I2C,现已改为硬件 I2C3 */ #include extern float ist8310_magnetic_field[3]; // (uT) extern float ist8310_temperature; // (℃) extern uint8_t ist8310_online; // 1-初始化成功 0-检测失败(有界重试后放弃,系统继续运行) extern uint8_t ist8310_last_who; // 最近一次读到的 WHO_AM_I(诊断用,正常 0x10) /* 初始化(任务上下文调用;失败时绿灯报警并重试,有界重试后放弃) */ extern void ist8310_init(void); /* 轮询读取(在 IMU_Task 1kHz 循环中调用,内部按 5ms/200Hz 分频, * 阻塞式 I2C 读取约 0.7ms@100kHz,不影响姿态解算) */ extern void ist8310_poll(void); #endif