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 (140769 times)
  2. FAT32 Library (73357 times)
  3. Network Ethernet Library (58200 times)
  4. USB Device Library (48385 times)
  5. Network WiFi Library (43977 times)
  6. FT800 Library (43538 times)
  7. GSM click (30467 times)
  8. mikroSDK (29170 times)
  9. PID Library (27169 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

Compass 5 click

Rating:

5

Author: MIKROE

Last Updated: 2020-11-24

Package Version: 1.0.0.0

mikroSDK Library: 1.0.0.0

Category: Magnetic

Downloaded: 2664 times

Not followed.

License: MIT license  

Compass 5 Click is a compact add-on board that contains a 3-axis magnetometer device suitable for compass application. This board features the AK09918C, a 3-axis electronic compass with high sensitive Hall sensor technology from AKM Semiconductor.

No Abuse Reported

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

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

Do you want to report abuse regarding "Compass 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

Compass 5 click

Compass 5 click

Native view of the Compass 5 click board.

View full image
Compass 5 click

Compass 5 click

Front and back view of the Compass 5 click board.

View full image

Library Description

The library contains a basic functions for using Compass 5 Click.

Key functions:

  • void compass5_get_id ( uint8_t *company_id, uint8_t *device_id ); - Function for get ID.
  • uint8_t compass5_set_operation_mode ( uint8_t op_mode ); - Function for set operation mode.
  • void compass5_get_mag_data ( int16_t *axis_x, int16_t *axis_y, int16_t *axis_z ); - Full measurement axis.

Examples description

The application is composed of three sections :

  • System Initialization - Initializes I2C and start to write log.
  • Application Initialization - Initialization driver enables - I2C, performed power down mode, sets continuous measurement mode and start measurement, also write log.
  • Application Task - (code snippet) - This is an example which demonstrates the use of Compass 5 Click board™. Measured and display sensor Magnetic data 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 2 sec.
void application_task ( )
{
    int16_t x_val;
    int16_t y_val;
    int16_t z_val;
    
    if ( compass5_check_data_ready( ) == COMPASS5_DATA_READY )
    {
        compass5_measurement_axis( &x_val, &y_val, &z_val );
        Delay_ms( 10 );
    
        FloatToStr( x_val, log_txt );
        mikrobus_logWrite( " X-axis: ", _LOG_TEXT );
        mikrobus_logWrite( log_txt, _LOG_TEXT );
        mikrobus_logWrite( "mG", _LOG_LINE );
        FloatToStr( y_val, log_txt );
        mikrobus_logWrite( " Y-axis: ", _LOG_TEXT );
        mikrobus_logWrite( log_txt, _LOG_TEXT );
        mikrobus_logWrite( "mG", _LOG_LINE );
        FloatToStr( z_val, log_txt );
        mikrobus_logWrite( " Z-axis: ", _LOG_TEXT );
        mikrobus_logWrite( log_txt, _LOG_TEXT );
        mikrobus_logWrite( "mG", _LOG_LINE );
        
        mikrobus_logWrite( "--------------------", _LOG_LINE );
    }
    Delay_ms( 2000 );
}

Other mikroE Libraries used in the example:

  • I2C Library
  • UART Library

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

NeoMesh 2 Click

0

NeoMesh 2 Click is a compact add-on board with a low-power, long-range transceiver, ideal for Mesh wireless networking. This board features the NC2400, a wireless Mesh network module from NeoCortec. With an additional antenna that MikroE offers connected to the module’s u.Fl connector, you can create a fully functional wireless Mesh network node that will work in the Sub-GHz frequency band of 2.4GHz. The module has a generic application layer that can be configured to suit applications.

[Learn More]

6LoWPAN C click

0

6LoWPAN C click carries the CC2520 2.4GHz RF transceiver. The click is designed to run on a 3.3V power supply. It communicates with the target microcontroller over SPI interface.

[Learn More]

Vibro Motor 2 click

5

Vibro Motor 2 Click features a compact size Eccentric Rotating Mass (ERM) motor, labeled as Z4FC1B1301781 as well as DMG3420U MOSFET to drive the ERM motor, since the MCU itself cannot provide enough power for the motor driving.

[Learn More]