Register definitions#

Register definitions.

Register and associated bit definitions#

enum
sl_accelODR_8000Hz = ICM40627_ACCEL_ODR_VALUE_8000
sl_accelODR_4000Hz = ICM40627_ACCEL_ODR_VALUE_4000
sl_accelODR_2000Hz = ICM40627_ACCEL_ODR_VALUE_2000
sl_accelODR_1000Hz = ICM40627_ACCEL_ODR_VALUE_1000
sl_accelODR_500Hz = ICM40627_ACCEL_ODR_VALUE_500
sl_accelODR_200Hz = ICM40627_ACCEL_ODR_VALUE_200
sl_accelODR_100Hz = ICM40627_ACCEL_ODR_VALUE_100
sl_accelODR_50Hz = ICM40627_ACCEL_ODR_VALUE_50
sl_accelODR_25Hz = ICM40627_ACCEL_ODR_VALUE_25
sl_accelODR_12_5Hz = ICM40627_ACCEL_ODR_VALUE_12_5
sl_accelODR_6_25Hz = ICM40627_ACCEL_ODR_VALUE_6_25
sl_accelODR_3_125Hz = ICM40627_ACCEL_ODR_VALUE_3_125
sl_accelODR_1_5625Hz = ICM40627_ACCEL_ODR_VALUE_1_5625
}
enum
sl_gyroODR_8000Hz = ICM40627_GYRO_ODR_VALUE_8000
sl_gyroODR_4000Hz = ICM40627_GYRO_ODR_VALUE_4000
sl_gyroODR_2000Hz = ICM40627_GYRO_ODR_VALUE_2000
sl_gyroODR_1000Hz = ICM40627_GYRO_ODR_VALUE_1000
sl_gyroODR_500Hz = ICM40627_GYRO_ODR_VALUE_500
sl_gyroODR_200Hz = ICM40627_GYRO_ODR_VALUE_200
sl_gyroODR_100Hz = ICM40627_GYRO_ODR_VALUE_100
sl_gyroODR_50Hz = ICM40627_GYRO_ODR_VALUE_50
sl_gyroODR_25Hz = ICM40627_GYRO_ODR_VALUE_25
sl_gyroODR_12_5Hz = ICM40627_GYRO_ODR_VALUE_12_5
}
enum
sl_gyroFS_2000dps = ICM40627_GYRO_FS_SEL_VALUE_2000
sl_gyroFS_1000dps = ICM40627_GYRO_FS_SEL_VALUE_1000
sl_gyroFS_500dps = ICM40627_GYRO_FS_SEL_VALUE_500
sl_gyroFS_250dps = ICM40627_GYRO_FS_SEL_VALUE_250
sl_gyroFS_125dps = ICM40627_GYRO_FS_SEL_VALUE_125
sl_gyroFS_62_5dps = ICM40627_GYRO_FS_SEL_VALUE_62_5
sl_gyroFS_31_25dps = ICM40627_GYRO_FS_SEL_VALUE_31_25
sl_gyroFS_15_625dps = ICM40627_GYRO_FS_SEL_VALUE_15_625
}
enum
sl_accelFS_16g = ICM40627_ACCEL_FS_SEL_VALUE_16G
sl_accelFS_8g = ICM40627_ACCEL_FS_SEL_VALUE_8G
sl_accelFS_4g = ICM40627_ACCEL_FS_SEL_VALUE_4G
sl_accelFS_2g = ICM40627_ACCEL_FS_SEL_VALUE_2G
}
enum
sl_gyroBW_ODR_DIV_2 = ICM40627_GYRO_UI_FILT_BW_VALUE_0
sl_gyroBW_ODR_DIV_4 = ICM40627_GYRO_UI_FILT_BW_VALUE_1
sl_gyroBW_ODR_DIV_5 = ICM40627_GYRO_UI_FILT_BW_VALUE_2
sl_gyroBW_ODR_DIV_8 = ICM40627_GYRO_UI_FILT_BW_VALUE_3
sl_gyroBW_ODR_DIV_10 = ICM40627_GYRO_UI_FILT_BW_VALUE_4
sl_gyroBW_ODR_DIV_16 = ICM40627_GYRO_UI_FILT_BW_VALUE_5
sl_gyroBW_ODR_DIV_20 = ICM40627_GYRO_UI_FILT_BW_VALUE_6
sl_gyroBW_ODR_DIV_40 = ICM40627_GYRO_UI_FILT_BW_VALUE_7
sl_gyroBW_ODR_DIV_1 = ICM40627_GYRO_UI_FILT_BW_VALUE_8
sl_gyroBW_ODR_MUL_8 = ICM40627_GYRO_UI_FILT_BW_VALUE_9
}
enum
sl_accelBW_ODR_DIV_2 = ICM40627_ACCEL_UI_FILT_BW_VALUE_0
sl_accelBW_ODR_DIV_4 = ICM40627_ACCEL_UI_FILT_BW_VALUE_1
sl_accelBW_ODR_DIV_5 = ICM40627_ACCEL_UI_FILT_BW_VALUE_2
sl_accelBW_ODR_DIV_8 = ICM40627_ACCEL_UI_FILT_BW_VALUE_3
sl_accelBW_ODR_DIV_10 = ICM40627_ACCEL_UI_FILT_BW_VALUE_4
sl_accelBW_ODR_DIV_16 = ICM40627_ACCEL_UI_FILT_BW_VALUE_5
sl_accelBW_ODR_DIV_20 = ICM40627_ACCEL_UI_FILT_BW_VALUE_6
sl_accelBW_ODR_DIV_40 = ICM40627_ACCEL_UI_FILT_BW_VALUE_7
sl_accelBW_ODR_DIV_1 = ICM40627_ACCEL_UI_FILT_BW_VALUE_8
sl_accelBW_ODR_MUL_8 = ICM40627_ACCEL_UI_FILT_BW_VALUE_9
}
#define

Device ID register

#define
ICM40627_DEVICE_ID ICM40627_WHO_AM_I_ID

ICM40627 Device ID value

#define

Total number of samples in the FIFO.

#define

Size of the FIFO header in bytes.

#define

Size of the accelerometer data in the FIFO in bytes.

#define

Size of the gyroscope data in the FIFO in bytes.

#define

Size of the temperature data in the FIFO in bytes.

#define

Size of the timestamp/fSync data in the FIFO in bytes.

Register and associated bit definitions Documentation#

sl_accel_ODR_t#

sl_accel_ODR_t
Enumerator
sl_accelODR_8000Hz

8 kHz (LN mode) >

sl_accelODR_4000Hz

4 kHz (LN mode) >

sl_accelODR_2000Hz

2 kHz (LN mode) >

sl_accelODR_1000Hz

1 kHz (LN mode) >

sl_accelODR_500Hz

500 Hz (LP or LN mode) >

sl_accelODR_200Hz

200 Hz (LP or LN mode) >

sl_accelODR_100Hz

100 Hz (LP or LN mode) >

sl_accelODR_50Hz

50 Hz (LP or LN mode) >

sl_accelODR_25Hz

25 Hz (LP or LN mode) >

sl_accelODR_12_5Hz

12.5 Hz (LP or LN mode) >

sl_accelODR_6_25Hz

6.25 Hz (LP mode) >

sl_accelODR_3_125Hz

3.125 Hz (LP mode) >

sl_accelODR_1_5625Hz

1.5625 Hz (LP mode) >


Definition at line 69 of file hardware/driver/icm40627/inc/sl_icm40627.h

sl_gyro_ODR_t#

sl_gyro_ODR_t
Enumerator
sl_gyroODR_8000Hz

8 kHz >

sl_gyroODR_4000Hz

4 kHz >

sl_gyroODR_2000Hz

2 kHz >

sl_gyroODR_1000Hz

1 kHz >

sl_gyroODR_500Hz

500 Hz >

sl_gyroODR_200Hz

200 Hz >

sl_gyroODR_100Hz

100 Hz >

sl_gyroODR_50Hz

50 Hz >

sl_gyroODR_25Hz

25 Hz >

sl_gyroODR_12_5Hz

12.5 Hz >


Definition at line 85 of file hardware/driver/icm40627/inc/sl_icm40627.h

sl_gyro_FS_t#

sl_gyro_FS_t
Enumerator
sl_gyroFS_2000dps

±2000 dps (default) >

sl_gyroFS_1000dps

±1000 dps >

sl_gyroFS_500dps

±500 dps >

sl_gyroFS_250dps

±250 dps >

sl_gyroFS_125dps

±125 dps >

sl_gyroFS_62_5dps

±62.5 dps >

sl_gyroFS_31_25dps

±31.25 dps >

sl_gyroFS_15_625dps

±15.625 dps >


Definition at line 98 of file hardware/driver/icm40627/inc/sl_icm40627.h

sl_Accel_FS_t#

sl_Accel_FS_t
Enumerator
sl_accelFS_16g

±16g (default) >

sl_accelFS_8g

±8g >

sl_accelFS_4g

±4g >

sl_accelFS_2g

±2g >


Definition at line 109 of file hardware/driver/icm40627/inc/sl_icm40627.h

sl_gyro_BW_t#

sl_gyro_BW_t
Enumerator
sl_gyroBW_ODR_DIV_2

BW = ODR / 2.

sl_gyroBW_ODR_DIV_4

BW = max(400 Hz, ODR) / 4 (default)

sl_gyroBW_ODR_DIV_5

BW = max(400 Hz, ODR) / 5.

sl_gyroBW_ODR_DIV_8

BW = max(400 Hz, ODR) / 8.

sl_gyroBW_ODR_DIV_10

BW = max(400 Hz, ODR) / 10.

sl_gyroBW_ODR_DIV_16

BW = max(400 Hz, ODR) / 16.

sl_gyroBW_ODR_DIV_20

BW = max(400 Hz, ODR) / 20.

sl_gyroBW_ODR_DIV_40

BW = max(400 Hz, ODR) / 40.

sl_gyroBW_ODR_DIV_1

BW = max(400 Hz, ODR)

sl_gyroBW_ODR_MUL_8

BW = max(200 Hz, 8*ODR)


Definition at line 116 of file hardware/driver/icm40627/inc/sl_icm40627.h

sl_accel_BW_t#

sl_accel_BW_t
Enumerator
sl_accelBW_ODR_DIV_2

BW = ODR / 2.

sl_accelBW_ODR_DIV_4

BW = max(400 Hz, ODR) / 4 (default)

sl_accelBW_ODR_DIV_5

BW = max(400 Hz, ODR) / 5.

sl_accelBW_ODR_DIV_8

BW = max(400 Hz, ODR) / 8.

sl_accelBW_ODR_DIV_10

BW = max(400 Hz, ODR) / 10.

sl_accelBW_ODR_DIV_16

BW = max(400 Hz, ODR) / 16.

sl_accelBW_ODR_DIV_20

BW = max(400 Hz, ODR) / 20.

sl_accelBW_ODR_DIV_40

BW = max(400 Hz, ODR) / 40.

sl_accelBW_ODR_DIV_1

BW = max(400 Hz, ODR)

sl_accelBW_ODR_MUL_8

BW = max(200 Hz, 8*ODR)


Definition at line 129 of file hardware/driver/icm40627/inc/sl_icm40627.h

ICM40627_WHO_AM_I_ID#

#define ICM40627_WHO_AM_I_ID
Value:
(0x4E)

Device ID register


Definition at line 59 of file hardware/driver/icm40627/inc/sl_icm40627.h

ICM40627_DEVICE_ID#

#define ICM40627_DEVICE_ID
Value:
ICM40627_WHO_AM_I_ID

ICM40627 Device ID value


Definition at line 60 of file hardware/driver/icm40627/inc/sl_icm40627.h

FIFO_SAMPLE_COUNT#

#define FIFO_SAMPLE_COUNT
Value:
(12 * 42)

Total number of samples in the FIFO.


Definition at line 62 of file hardware/driver/icm40627/inc/sl_icm40627.h

FIFO_HEADER_SIZE#

#define FIFO_HEADER_SIZE
Value:
1

Size of the FIFO header in bytes.


Definition at line 63 of file hardware/driver/icm40627/inc/sl_icm40627.h

FIFO_ACCEL_DATA_SIZE#

#define FIFO_ACCEL_DATA_SIZE
Value:
6

Size of the accelerometer data in the FIFO in bytes.


Definition at line 64 of file hardware/driver/icm40627/inc/sl_icm40627.h

FIFO_GYRO_DATA_SIZE#

#define FIFO_GYRO_DATA_SIZE
Value:
6

Size of the gyroscope data in the FIFO in bytes.


Definition at line 65 of file hardware/driver/icm40627/inc/sl_icm40627.h

FIFO_TEMP_DATA_SIZE#

#define FIFO_TEMP_DATA_SIZE
Value:
1

Size of the temperature data in the FIFO in bytes.


Definition at line 66 of file hardware/driver/icm40627/inc/sl_icm40627.h

FIFO_TS_FSYNC_SIZE#

#define FIFO_TS_FSYNC_SIZE
Value:
2

Size of the timestamp/fSync data in the FIFO in bytes.


Definition at line 67 of file hardware/driver/icm40627/inc/sl_icm40627.h