TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (405 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (133 codes)
  5. Bugz Bensce (97 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (142145 times)
  2. FAT32 Library (75468 times)
  3. Network Ethernet Library (59583 times)
  4. USB Device Library (49582 times)
  5. Network WiFi Library (45370 times)
  6. FT800 Library (45056 times)
  7. GSM click (31487 times)
  8. mikroSDK (30592 times)
  9. microSD click (27907 times)
  10. PID Library (27641 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
mikroSDK Library

6DOF IMU 12 click

Rating:

5

Author: MIKROE

Last Updated: 2020-04-01

Package Version: 1.0.0.0

mikroSDK Library: 1.0.0.0

Category: Motion

Downloaded: 2059 times

Not followed.

License: MIT license  

6DOF IMU 12 carries the ultra-low-power BMI270, Inertial Measurement Unit optimized for wearables providing precise acceleration, angular rate measurement and intelligent on-chip motion-triggered interrupt features.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "6DOF IMU 12 click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "6DOF IMU 12 click" changes.

Do you want to report abuse regarding "6DOF IMU 12 click".

  • mikroSDK Library 2.0.0.0
  • Comments (0)

mikroSDK Library Blog

6DOF IMU 12 Click

6DOF IMU 12 Click

Native view of the 6DOF IMU 12 Click board.

View full image
6DOF IMU 12 Click

6DOF IMU 12 Click

Front and back view of the 6DOF IMU 12 Click board.

View full image

Library Description

The library covers all the necessary functions to control 6DOF IMU 12 click board. Library performs a standard I2C and SPI interface communication.

Key functions:

  • uint8_t c6dofimu12_generic_read ( uint8_t reg ) - Generic read the byte of data function.
  • void c6dofimu12_burst_write ( uint8_t reg, uint8_t *p_tx_data, uint16_t n_len ) - Generic sequential data write function.
  • void c6dofimu12_get_data ( c6dofimu12_accel_t *accel_data, c6dofimu12_gyro_t *gyro_data ) - Read Accel and Gyro data function.

Examples description

The application is composed of three sections :

  • System Initialization - Initializes I2C and start to write log.
  • Application Initialization - Initialization driver enables - I2C, check communication by read device ID, initializing the device, set default configuration for accelerometer and gyroscope, also write log.
  • Application Task - (code snippet) This is an example which demonstrates the use of 6DOF IMU 12 Click board. Measured and display Accel and Gyro data coordinates values for X-axis, Y-axis and Z-axis. Results are being sent to the Usart Terminal where you can track their changes. All data logs write on USB uart changes for every 1 sec.
void application_task( )
{
    c6dofimu12_get_data ( &accel_data, &gyro_data );

    mikrobus_logWrite( " Accel X :", _LOG_TEXT );
    IntToStr( accel_data.x, log_text );
    mikrobus_logWrite( log_text, _LOG_TEXT );
    mikrobus_logWrite( "  |  ", _LOG_TEXT );
    mikrobus_logWrite( " Gyro X :", _LOG_TEXT );
    IntToStr( gyro_data.x, log_text );
    mikrobus_logWrite( log_text, _LOG_LINE );

    mikrobus_logWrite( " Accel Y :", _LOG_TEXT );
    IntToStr( accel_data.y, log_text );
    mikrobus_logWrite( log_text, _LOG_TEXT );
    mikrobus_logWrite( "  |  ", _LOG_TEXT );
    mikrobus_logWrite( " Gyro Y :", _LOG_TEXT );
    IntToStr( gyro_data.y, log_text );
    mikrobus_logWrite( log_text, _LOG_LINE );

    mikrobus_logWrite( " Accel Z :", _LOG_TEXT );
    IntToStr( accel_data.z, log_text );
    mikrobus_logWrite( log_text, _LOG_TEXT );
    mikrobus_logWrite( "  |  ", _LOG_TEXT );
    mikrobus_logWrite( " Gyro Z :", _LOG_TEXT );
    IntToStr( gyro_data.z, log_text );
    mikrobus_logWrite( log_text, _LOG_LINE );
    mikrobus_logWrite( "-------------------------------------", _LOG_LINE );
    
    Delay_ms( 1000 );
}

Other mikroE Libraries used in the example:

  • I2C or SPI
  • UART
  • Conversions

Additional notes and informations

Depending on the development board you are using, you may need USB UART clickUSB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.

ALSO FROM THIS AUTHOR

RTC 14 Click

0

RTC 14 Click is a compact add-on board that measures the passage of time. This board features the ISL1221, a low-power RTC with battery-backed SRAM and event detection from Renesas. The ISL1221 tracks time with separate registers for hours, minutes, and seconds, operating in normal and battery mode. It also can timestamp an event by either issuing an output signal, containing the second, minute, hour, date, month, and year that the triggering event occurred, or by stopping the RTC registers from advancing at the moment the event occurs. The calendar feature is exceptionally accurate through 2099, with automatic leap year correction.

[Learn More]

Thermostat 2 click

5

Thermostat 2 Click is a general-purpose thermostat Click board designed to be used with any temperature sensor based on the DS1820 sensor design: 3-pin package with 1-Wire® communication interface.

[Learn More]

HW Monitor 3 Click

0

HW Monitor 3 Click is a compact add-on board designed for precise voltage monitoring and supervision in critical systems. This board features the TPS389006, a six-channel window voltage supervisor IC from Texas Instruments, offering SIL-3 safety compliance. This board features I2C programmability, ±6mV accuracy, built-in CRC error checking, sequence logging, and an integrated ADC for real-time voltage readouts. It supports fixed window thresholds with fine granularity, undervoltage lockout (UVLO) at 2.48V, and remote sensing to monitor high-current rails accurately.

[Learn More]