平台:platformio+stm32duino(arduino+stm32)
库:finani/ICM42688@^1.1.0
滤波库:paulstoffregen/Mahony@^1.2 (Mahony by Arduino)
1,关闭AFSR
库文件,cpp中加入如下
int ICM42688::disableAFSR() {
uint8_t intfConfig1Value;
if (readRegisters(ICM426XX_INTF_CONFIG1, 1, &intfConfig1Value) < 0) return -1;
intfConfig1Value &= ~ICM426XX_INTF_CONFIG1_AFSR_MASK;
intfConfig1Value |= ICM426XX_INTF_CONFIG1_AFSR_DISABLE;
if (writeRegister(ICM426XX_INTF_CONFIG1, intfConfig1Value) < 0) return -2;
return 1;
}
H文件public末尾中加入
int disableAFSR();
registers.h文件加入
static constexpr uint8_t ICM426XX_INTF_CONFIG1 = 0x4D;
static constexpr uint8_t ICM426XX_INTF_CONFIG1_AFSR_MASK = 0xC0;
static constexpr uint8_t ICM426XX_INTF_CONFIG1_AFSR_DISABLE =0x40;
void setup()内,imu begin且判断成功后,加入
IMU.disableAFSR();
澹版槑:
鏈枃閲囩敤
BY-NC-SA
鍗忚杩涜鎺堟潈锛屽鏃犳敞鏄庡潎涓哄師鍒涳紝杞浇璇锋敞鏄庤浆鑷?
走着的小站
鏈枃鍦板潃: ICM42688优化
鏈枃鍦板潃: ICM42688优化