TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (402 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (129 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 (140776 times)
  2. FAT32 Library (73360 times)
  3. Network Ethernet Library (58201 times)
  4. USB Device Library (48386 times)
  5. Network WiFi Library (43981 times)
  6. FT800 Library (43538 times)
  7. GSM click (30471 times)
  8. mikroSDK (29176 times)
  9. PID Library (27173 times)
  10. microSD click (26848 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

Gyro 5 click

Rating:

5

Author: MIKROE

Last Updated: 2019-07-11

Package Version: 1.0.0.0

mikroSDK Library: 1.0.0.0

Category: Motion

Downloaded: 3326 times

Not followed.

License: MIT license  

Gyro 5 Click is a three-axis gyroscope Click board that can sense motion over three perpendicular axes. It is equipped with the ITG-3701, a three-axis digital gyroscope.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "Gyro 5 click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "Gyro 5 click" changes.

Do you want to report abuse regarding "Gyro 5 click".

  • mikroSDK Library 2.0.0.0
  • Comments (0)
DOWNLOAD LINK RELATED COMPILER CONTAINS
mikroBasic PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc

mikroSDK Library Blog

Gyro 5 click

Gyro 5 click

Native view of the Gyro 5 click board.

View full image
Gyro 5 click

Gyro 5 click

Front and back view of the Gyro 5 click board.

View full image

Library Description

Library contains function for getting INT pin state Library contains function for setting CS pin state Library contains function for getting register values Library contains function for setting register values Library contains function for device initialization Library contains function for getting temperature value Library contains function for getting axes values Library contains function for software reset Library contains functions for setting power mode and full scale range

Key functions:

  • uint8_t gyro5_initialize( void ) - initializes the device.
  • uint8_t gyro5_get_temperature( float * temperature ) - reads temperature measurement registers and converts raw temperature data to get die temperature in [deg C].
  • uint8_t gyro5_get_axes( float * x_axis, float * y_axis, float * z_axis ) - reads axes measurement registers and converts raw axes measurement data to get gyroscope data in [deg/s].

Examples description

The application is composed of three sections :

  • System Initialization - Initializes GPIO pins, I2C and LOG modules.
  • Application Initialization - Initializes I2C driver and the device.
  • Application Task - Checks data ready INT, gets temperature and axes data and LOGs those values.
void applicationTask( )
{
    data_ready_flag = gyro5_interrupt_status( _GYRO5_INT_DATA_RDY );
    
    if (data_ready_flag == 1)
    {
        gyro5_get_temperature( &temperature_value );
        gyro5_get_axes( &x_axis_value, &y_axis_value, &z_axis_value );

        mikrobus_logWrite( " ", _LOG_LINE );

        FloatToStr( x_axis_value, text );
        gyro5_floatCut( );
        mikrobus_logWrite( "> X axis = ", _LOG_TEXT );
        mikrobus_logWrite( text, _LOG_TEXT );
        mikrobus_logWrite( degrees_per_second, _LOG_LINE );

        FloatToStr( y_axis_value, text );
        gyro5_floatCut( );
        mikrobus_logWrite( "> Y axis = ", _LOG_TEXT );
        mikrobus_logWrite( text, _LOG_TEXT );
        mikrobus_logWrite( degrees_per_second, _LOG_LINE );

        FloatToStr( z_axis_value, text );
        gyro5_floatCut( );
        mikrobus_logWrite( "> Z axis = ", _LOG_TEXT );
        mikrobus_logWrite( text, _LOG_TEXT );
        mikrobus_logWrite( degrees_per_second, _LOG_LINE );

        FloatToStr( temperature_value, text );
        gyro5_floatCut( );
        mikrobus_logWrite( "> Temperature = ", _LOG_TEXT );
        mikrobus_logWrite( text, _LOG_TEXT );
        mikrobus_logWrite( degrees_celsius, _LOG_LINE );
    }
    Delay_ms(300);
}


Additional Functions :

  • gyro5_floatCut() - Rounds float number converted to string to 2 decimals.

Other mikroE Libraries used in the example:

  • SPI
  • I2C
  • 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

Altitude 5 Click

0

Altitude 5 Click is a compact add-on board allowing high-resolution barometric pressure measurement. This board features the KP236, an analog barometric air pressure sensor based on a capacitive principle from Infineon Technologies. The KP236 is primarily developed for measuring barometric air pressure but can also be used in other application fields. It is surface micro-machined with a monolithic integrated signal conditioning circuit implemented in BiCMOS technology. The calibrated transfer function converts pressure into an analog output signal in a range of 40kPa to 115kPa. However, the choice of signal processing is up to the user; more precisely, the user can process the output signal in analog or digital form. The high accuracy and the high sensitivity of the KP236 make this Click board™ suitable for advanced automotive applications and industrial and consumer applications.

[Learn More]

Pressure 3 Click

0

Pressure 3 Click is a mikroBUS add-on board that carries an Infineon DPS310 digital barometric pressure sensor. It has an operating range from 300 to 1200 hPa with a relative accuracy of 0.06 hPa and absolute accuracy of 1 hPa.

[Learn More]

Pressure 17 Click

0

Pressure 17 Click is a compact add-on board that contains a board-mount pressure sensor. This board features the BM1390GLV-Z, a high-precision piezoresistive pressure sensor from Rohm Semiconductor. The BM1390GLV-Z comes with a configurable host interface that supports I2C serial communication and measures pressure in a range from 300hPa up to 1300hPa with an accuracy of ±1hPa.

[Learn More]