PCA9547: an I2C bus multiplexer control library. PCA9547 is an I2C multiplexer which enables to select 1:8 multiplexed I2C bus. The multiplexer is useful for deviding I2C bus to avoiding slave address conflict and separating capacitive loads. For more information about PCA9547: http://www.nxp.com/documents/data_sheet/PCA9547.pdf

Dependents:   pca9547_Hello m3Dpi

Embed: (wiki syntax)

« Back to documentation index

PCA9547 Class Reference

PCA9547 Class Reference

PCA9547 class. More...

#include <PCA9547.h>

Public Member Functions

 PCA9547 (PinName sda, PinName scl, char i2c_address=0xE0)
 Create a PCA9547 instance connected to specified I2C pins with specified address.
 PCA9547 (I2C &i2c_, char i2c_address=0xE0)
 Create a PCA9546A instance connected to specified I2C pins with specified address.
 ~PCA9547 ()
 Destructor of PCA9547.
void select (char channel)
 Channel select.
void disable (void)
 Disabling all channels.

Detailed Description

PCA9547 class.

PCA9547: an I2C bus multiplexer control library

PCA9547 is an I2C multiplexer which enables to select 1:8 multiplexed I2C bus. The multiplexer is useful for deviding I2C bus to avoiding slave address conflict and separating capacitive loads.

For more informatioj about PCA9547: http://www.nxp.com/documents/data_sheet/PCA9547.pdf

Example:

  #include "mbed.h"
  #include "LM75B.h"
  #include "PCA9547.h"

  PCA9547 mux( p28, p27, 0xE0 );

  int main()
  {
      mux.select( 0 );

      LM75B   tmp0( p28, p27 );   //  making instance after a branch of I2C bus (which is connecting the LM75B) enabled

      while(1) {
          printf( "%.3f\r\n", tmp0.read() );
          wait( 1.0 );
      }
  }

Definition at line 55 of file PCA9547.h.


Constructor & Destructor Documentation

PCA9547 ( PinName  sda,
PinName  scl,
char  i2c_address = 0xE0 
)

Create a PCA9547 instance connected to specified I2C pins with specified address.

PCA9547 library.

Parameters:
sdaI2C-bus SDA pin
sclI2C-bus SCL pin
i2c_addressI2C-bus address (default: 0xE0)
Author:
Tedd OKANO
Version:
0.2
Date:
Feb-2015

PCA9547: an I2C bus multiplexer control library

PCA9547 is an I2C multiplexer which enables to select 1:8 multiplexed I2C bus. The multiplexer is useful for deviding I2C bus to avoiding slave address conflict and separating capacitive loads.

For more information about PCA9547: http://www.nxp.com/documents/data_sheet/PCA9547.pdf

Definition at line 20 of file PCA9547.cpp.

PCA9547 ( I2C &  i2c_,
char  i2c_address = 0xE0 
)

Create a PCA9546A instance connected to specified I2C pins with specified address.

Parameters:
&i2c_I2C object (instance)
i2c_addressI2C-bus address (default: 0xE0)

Definition at line 27 of file PCA9547.cpp.

~PCA9547 (  )

Destructor of PCA9547.

Definition at line 34 of file PCA9547.cpp.


Member Function Documentation

void disable ( void   )

Disabling all channels.

Disable all channels

Definition at line 47 of file PCA9547.cpp.

void select ( char  channel )

Channel select.

Enable and select a channel

Parameters:
channelchannel number

Definition at line 40 of file PCA9547.cpp.