i2cmux2 2.0.0.0
main.c File Reference

I2cMux2 Click example. More...

#include "board.h"
#include "log.h"
#include "i2cmux2.h"

Macros

#define ENABLE_CHANNEL_0
 
#define ENABLE_CHANNEL_1
 
#define ENABLE_CHANNEL_2
 
#define ENABLE_CHANNEL_3
 

Functions

void display_log (uint8_t sel_ch)
 
void application_init (void)
 
void application_task (void)
 
int main (void)
 

Detailed Description

I2cMux2 Click example.

Description

This example demonstrates the use of the I2C MUX 2 Click board.

The demo application is composed of two sections :

Application Init

Initializes the driver, performs the device reset, and makes an initial log.

Application Task

In this example, we read the device ID register of the connected click boards. Channel 0 : 6DOF IMU 11 click [slave address: 0x0E; reg: 0x00; id val.: 0x2D], Channel 1 : Altitude click [slave address: 0x60; reg: 0x0C; id val.: 0xC4], Channel 2 : 6DOF IMU 9 click [slave address: 0x69; reg: 0x75; id val.: 0xA9], Channel 3 : Compass 3 click [slave address: 0x30; reg: 0x2F; id val.: 0x0C]. All data logs write on USB UART changes every 2 sec.

Note
Disable all unconnected channels from the example using ENABLE_CHANNEL_x macros below to prevent the I2C bus from blocking waiting for a device response.
Author
MikroE Team

Macro Definition Documentation

◆ ENABLE_CHANNEL_0

#define ENABLE_CHANNEL_0

◆ ENABLE_CHANNEL_1

#define ENABLE_CHANNEL_1

◆ ENABLE_CHANNEL_2

#define ENABLE_CHANNEL_2

◆ ENABLE_CHANNEL_3

#define ENABLE_CHANNEL_3

Function Documentation

◆ application_init()

void application_init ( void )

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 LOG_MAP_USB_UART macro definition for detailed explanation.

◆ application_task()

void application_task ( void )

◆ display_log()

void display_log ( uint8_t sel_ch)

◆ main()

int main ( void )