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 (141228 times)
  2. FAT32 Library (74037 times)
  3. Network Ethernet Library (58659 times)
  4. USB Device Library (48766 times)
  5. Network WiFi Library (44485 times)
  6. FT800 Library (44034 times)
  7. GSM click (30784 times)
  8. mikroSDK (29602 times)
  9. PID Library (27342 times)
  10. microSD click (27188 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

Barometer 6 Click

Rating:

0

Author: MIKROE

Last Updated: 2024-10-31

Package Version: 2.1.0.11

mikroSDK Library: 2.0.0.0

Category: Pressure

Downloaded: 267 times

Not followed.

License: MIT license  

Barometer 6 Click is a compact add-on board used to measure air pressure in a specific environment. This board features the 2SMPB-02E, a high-accuracy digital barometric air pressure sensor with low current consumption from Omron Electronics. The 2SMPB-02E has a calibration parameter for broader pressure and temperature range, features a MEMS chip for sensing air pressure and an IC chip for signal processing.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "Barometer 6 Click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "Barometer 6 Click" changes.

Do you want to report abuse regarding "Barometer 6 Click".

  • Information
  • Comments (0)

mikroSDK Library Blog


Barometer 6 Click

Barometer 6 Click is a compact add-on board used to measure air pressure in a specific environment. This board features the 2SMPB-02E, a high-accuracy digital barometric air pressure sensor with low current consumption from Omron Electronics. The 2SMPB-02E has a calibration parameter for broader pressure and temperature range, features a MEMS chip for sensing air pressure and an IC chip for signal processing.

barometer6_click.png

Click Product page


Click library

  • Author : Stefan Ilic
  • Date : Dec 2021.
  • Type : I2C/SPI type

Software Support

We provide a library for the Barometer 6 Click as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.

Package can be downloaded/installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.

Library Description

This library contains API for Barometer 6 Click driver.

Standard key functions :

  • barometer6_cfg_setup Config Object Initialization function.

    void barometer6_cfg_setup ( barometer6_cfg_t *cfg );
  • barometer6_init Initialization function.

    err_t barometer6_init ( barometer6_t *ctx, barometer6_cfg_t *cfg );
  • barometer6_default_cfg Click Default Configuration function.

    err_t barometer6_default_cfg ( barometer6_t *ctx );

Example key functions :

  • barometer6_hardware_reset Barometer 6 hardware reset function.

    void barometer6_hardware_reset ( barometer6_t *ctx );
  • barometer6_set_mode Barometer 6 set operation mode function.

    void barometer6_set_mode ( barometer6_t *ctx, uint8_t mode );
  • barometer6_read_temperature_value Barometer 6 get temperature value function.

    void barometer6_read_temperature_value ( barometer6_t *ctx, float *temp_out );

Example Description

This is an example that demonstrates the use of the Barometer 6 Click board.

The demo application is composed of two sections :

Application Init

Initalizes SPI or I2C driver, applies default settings and reads Chip ID.


void application_init ( void )
{
    log_cfg_t log_cfg;  /**< Logger config object. */
    barometer6_cfg_t barometer6_cfg;  /**< Click config object. */

    /** 
     * Logger initialization.
     * Default baud rate: 115200
     * Default log level: LOG_LEVEL_DEBUG
     * @note If USB_UART_RX and USB_UART_TX 
     * are defined as HAL_PIN_NC, you will 
     * need to define them manually for log to work. 
     * See @b LOG_MAP_USB_UART macro definition for detailed explanation.
     */
    LOG_MAP_USB_UART( log_cfg );
    log_init( &logger, &log_cfg );
    log_info( &logger, " Application Init " );

    // Click initialization.
    barometer6_cfg_setup( &barometer6_cfg );
    BAROMETER6_MAP_MIKROBUS( barometer6_cfg, MIKROBUS_1 );
    err_t init_flag  = barometer6_init( &barometer6, &barometer6_cfg );
    if ( ( I2C_MASTER_ERROR == init_flag ) || ( SPI_MASTER_ERROR == init_flag ) )
    {
        log_error( &logger, " Communication init." );
        for ( ; ; );
    }

    barometer6_default_cfg ( &barometer6 );

    barometer6_read_id( &barometer6, &dev_id );
    if ( BAROMETER6_ID_VALUE != dev_id )
    {
        log_printf( &logger, " Device communication Error " );
        for ( ; ; );
    }

    log_printf( &logger, "- - - - - - - - - - - - - - -\r\n" );
    log_printf( &logger, " Device ID : 0x%.2X \r\n", ( uint16_t ) dev_id );
    log_printf( &logger, "- - - - - - - - - - - - - - -\r\n" );

    log_info( &logger, " Application Task " );
}

Application Task

Demonstrates use of Barometer 6 Click board by reading pressure and temperature data seconds and logging it on the UART terminal.

void application_task ( void )
{
    float pressure;
    float temperature;

    barometer6_read_temperature_value( &barometer6, &temperature );
    barometer6_read_preassure_value( &barometer6, &pressure );

    log_printf( &logger, " Temperature : %.2f C    \r\n", temperature );
    log_printf( &logger, " Pressure    : %.2f mBar \r\n", pressure );
    log_printf( &logger, "- - - - - - - - - - - - - - -\r\n" );

    Delay_ms ( 1000 );
}

The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.

Other Mikroe Libraries used in the example:

  • MikroSDK.Board
  • MikroSDK.Log
  • Click.Barometer6

Additional notes and informations

Depending on the development board you are using, you may need USB UART Click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all MikroElektronika compilers.


ALSO FROM THIS AUTHOR

BLE 8 click

5

BLE 8 Click is fully embedded stand-alone Bluetooth Low Energy connectivity module, equipped with the ANNA-B112, an ultra-small, high-performing, standalone Bluetooth low energy module for easy integration of Bluetooth low energy connectivity (BLE) into various electronic devices.

[Learn More]

RYB080I Click

0

RYB080I Click is a compact add-on board for seamless Bluetooth Low Energy (LE) communication in various wireless applications. This board features the RYB080I, a 2.4GHz Bluetooth 4.2/5.0 LE module with an integrated antenna from REYAX, based on the TI CC2640R2F ARM® Cortex®-M3 MCU. This module supports dual-device connectivity, operates in both Host and Client roles, and includes a metal cover for EMI protection, ensuring stable performance even in noisy environments. With support for the Generic Attribute Profile (GATT) and easy setup via REYAX AT commands, integration into diverse systems is simplified.

[Learn More]

UART to I2C Click

0

UART to I2C Click is a compact add-on board allowing connections to UART controllers and I2C targets for protocol conversion. This board features the SC18IM704, a bridge between the standard UART host interface and a serial I2C bus from NXP Semiconductors. The SC18IM704 provides a high-speed UART interface with a baud rate of up to 460.8 kbit/s and 256-byte FIFO for the transfer/receive data process, alongside several user-configurable GPIO pins. The host MCU communicates with the SC18IM704 with ASCII messages protocol, allowing it to control all the specific I2C-bus sequences, protocol, arbitration, and timing.

[Learn More]