The IMU consists of a state-of-the-art 3-axis, low-g accelerometer, and a low-power 3-axis gyroscope, designed for 6-axis and 9-axis applications. The BMI160 also includes built-in power management unit (PMU) for advanced power management and power-saving modes, as well as allocated FIFO buffer of 1024 bytes for handling external sensor data.
6DOF IMU 2 click communicates with the target MCU through the I2C or SPI bus (user-selectable), with additional functionality provided by the INT pin (for enhanced autonomous motion detection).
The board is designed to use a 3.3 power supply only.
Type | Motion |
Applications | Game controllers, remote controls and pointing devices |
On-board modules | Bosch's BMI160 low power inertial measurement unit (IMU) |
Key Features | Interrupts for motion detection |
Key Benefits | Capable of handling external sensor data, Android Lollipop compatible |
Interface | GPIO,I2C,SPI |
Input Voltage | 3.3V |
Compatibility | mikroBUS |
Click board size | M (42.9 x 25.4 mm) |
Code snippet demonstrates initialization of the 6DOF IMU 2, reading gyro and accel data, and printing them out on TFT.
1 void main() 2 { 3 4 Display_Init(); 5 I2C1_Init(); 6 dof6_hal_init(BMI160_I2C_ADDRESS ); 7 dof6_sensor_config(accel_normal , gyro_normal); 8 9 while (1) 10 { 11 acc_x=dof6_get_acc_x(); 12 acc_y=dof6_get_acc_y(); 13 acc_z=dof6_get_acc_z(); 14 gyro_x=dof6_get_gyr_x(); 15 gyro_y=dof6_get_gyr_y(); 16 gyro_z=dof6_get_gyr_z(); 17 display_data(); 18 Delay_ms(50); 19 } 20 }