Factor out boards.h -- share it with imu-demo/
This commit is contained in:
41
include/boards.h
Normal file
41
include/boards.h
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
#include "mgos.h"
|
||||||
|
#include "mgos_imu.h"
|
||||||
|
|
||||||
|
#if BOARD == 1
|
||||||
|
// LSM303D_L3GD20_COMBO -- sold as GY-89
|
||||||
|
#define ACC_I2CADDR 0x1d
|
||||||
|
#define ACC_TYPE ACC_LSM303D
|
||||||
|
#define GYRO_I2CADDR 0x6b
|
||||||
|
#define GYRO_TYPE GYRO_L3GD20
|
||||||
|
#define GYRO_ORIENT { 0, -1, 0, 1, 0, 0, 0, 0, 1 }
|
||||||
|
#define MAG_I2CADDR 0x1d
|
||||||
|
#define MAG_TYPE MAG_LSM303D
|
||||||
|
#define MAG_ORIENT { 1, 0, 0, 0, 1, 0, 0, 0, 1 }
|
||||||
|
#elif BOARD == 2
|
||||||
|
// ITG3205_ADXL345_HMC5883L_COMBO -- sold as HW-579
|
||||||
|
#define ACC_I2CADDR 0x53
|
||||||
|
#define ACC_TYPE ACC_ADXL345
|
||||||
|
#define GYRO_I2CADDR 0x68
|
||||||
|
#define GYRO_TYPE GYRO_ITG3205
|
||||||
|
#define MAG_I2CADDR 0x1d
|
||||||
|
#define MAG_TYPE MAG_HMC5883L
|
||||||
|
#elif BOARD == 3
|
||||||
|
// Sold as M5 Stack (ESP32 + MPU9250)
|
||||||
|
#define ACC_I2CADDR 0x68
|
||||||
|
#define ACC_TYPE ACC_MPU9250
|
||||||
|
#define GYRO_I2CADDR 0x68
|
||||||
|
#define GYRO_TYPE GYRO_MPU9250
|
||||||
|
#define GYRO_ORIENT { 1, 0, 0, 0, 1, 0, 0, 0, 1 }
|
||||||
|
#define MAG_I2CADDR 0x0c
|
||||||
|
#define MAG_TYPE MAG_AK8963
|
||||||
|
#define MAG_ORIENT { 0, 1, 0, 1, 0, 0, 0, 0, -1 }
|
||||||
|
#elif BOARD == 3
|
||||||
|
#define ACC_I2CADDR 0x68
|
||||||
|
#define ACC_TYPE ACC_LSM9DS1
|
||||||
|
#define GYRO_I2CADDR 0x68
|
||||||
|
#define GYRO_TYPE GYRO_LSM9DS1
|
||||||
|
#define GYRO_ORIENT { 1, 0, 0, 0, 1, 0, 0, 0, 1 }
|
||||||
|
#define MAG_I2CADDR 0x0c
|
||||||
|
#define MAG_TYPE MAG_LSM9DS1
|
||||||
|
#define MAG_ORIENT { 1, 0, 0, 0, 1, 0, 0, 0, 1 }
|
||||||
|
#endif
|
34
tests/imu.c
34
tests/imu.c
@ -4,38 +4,14 @@
|
|||||||
|
|
||||||
uint32_t test_imu_period_ms = 100; // 10Hz
|
uint32_t test_imu_period_ms = 100; // 10Hz
|
||||||
bool test_imu_enabled = true;
|
bool test_imu_enabled = true;
|
||||||
|
|
||||||
static struct mgos_imu *s_imu = NULL;
|
static struct mgos_imu *s_imu = NULL;
|
||||||
|
|
||||||
#define BOARD 0
|
#define BOARD 3
|
||||||
|
#include "boards.h"
|
||||||
|
|
||||||
#if BOARD == 1
|
#ifndef BOARD
|
||||||
// LSM303D_L3GD20_COMBO -- sold as GY-89
|
#define ACC_I2CADDR -1
|
||||||
#define ACC_I2CADDR 0x1d
|
#define ACC_TYPE -1
|
||||||
#define ACC_TYPE ACC_LSM303D
|
|
||||||
#define GYRO_I2CADDR 0x6b
|
|
||||||
#define GYRO_TYPE GYRO_L3GD20
|
|
||||||
#define MAG_I2CADDR 0x1d
|
|
||||||
#define MAG_TYPE MAG_LSM303D
|
|
||||||
#elif BOARD == 2
|
|
||||||
// ITG3205_ADXL345_HMC5883L_COMBO -- sold as HW-579
|
|
||||||
#define ACC_I2CADDR 0x53
|
|
||||||
#define ACC_TYPE ACC_ADXL345
|
|
||||||
#define GYRO_I2CADDR 0x68
|
|
||||||
#define GYRO_TYPE GYRO_ITG3205
|
|
||||||
#define MAG_I2CADDR 0x1d
|
|
||||||
#define MAG_TYPE MAG_HMC5883L
|
|
||||||
#elif BOARD == 3
|
|
||||||
// Sold as M5 Stack (ESP32 + MPU9250)
|
|
||||||
#define ACC_I2CADDR 0x68
|
|
||||||
#define ACC_TYPE ACC_MPU9250
|
|
||||||
#define GYRO_I2CADDR 0x68
|
|
||||||
#define GYRO_TYPE GYRO_MPU9250
|
|
||||||
#define MAG_I2CADDR 0x0c
|
|
||||||
#define MAG_TYPE MAG_AK8963
|
|
||||||
#else
|
|
||||||
#define ACC_I2CADDR 0x1d
|
|
||||||
#define ACC_TYPE ACC_MMA8451
|
|
||||||
#define GYRO_I2CADDR -1
|
#define GYRO_I2CADDR -1
|
||||||
#define GYRO_TYPE -1
|
#define GYRO_TYPE -1
|
||||||
#define MAG_I2CADDR -1
|
#define MAG_I2CADDR -1
|
||||||
|
Reference in New Issue
Block a user