LibDriver PCA9548A
Loading...
Searching...
No Matches
pca9548a base driver function

pca9548a base driver modules More...

Collaboration diagram for pca9548a base driver function:

Data Structures

struct  pca9548a_handle_s
 pca9548a handle structure definition More...
struct  pca9548a_info_s
 pca9548a information structure definition More...

Typedefs

typedef struct pca9548a_handle_s pca9548a_handle_t
 pca9548a handle structure definition
typedef struct pca9548a_info_s pca9548a_info_t
 pca9548a information structure definition

Enumerations

enum  pca9548a_address_t {
  PCA9548A_ADDRESS_A000 = 0xE0 , PCA9548A_ADDRESS_A001 = 0xE2 , PCA9548A_ADDRESS_A010 = 0xE4 , PCA9548A_ADDRESS_A011 = 0xE6 ,
  PCA9548A_ADDRESS_A100 = 0xE8 , PCA9548A_ADDRESS_A101 = 0xEA , PCA9548A_ADDRESS_A110 = 0xEC , PCA9548A_ADDRESS_A111 = 0xEE
}
 pca9548a address enumeration definition More...
enum  pca9548a_bool_t { PCA9548A_BOOL_FALSE = 0x00 , PCA9548A_BOOL_TRUE = 0x01 }
 pca9548a bool enumeration definition More...
enum  pca9548a_channel_t {
  PCA9548A_CHANNEL_0 = 0 , PCA9548A_CHANNEL_1 = 1 , PCA9548A_CHANNEL_2 = 2 , PCA9548A_CHANNEL_3 = 3 ,
  PCA9548A_CHANNEL_4 = 4 , PCA9548A_CHANNEL_5 = 5 , PCA9548A_CHANNEL_6 = 6 , PCA9548A_CHANNEL_7 = 7
}
 pca9548a channel enumeration definition More...

Functions

uint8_t pca9548a_info (pca9548a_info_t *info)
 get chip's information
uint8_t pca9548a_set_addr_pin (pca9548a_handle_t *handle, pca9548a_address_t addr_pin)
 set the address pin
uint8_t pca9548a_get_addr_pin (pca9548a_handle_t *handle, pca9548a_address_t *addr_pin)
 get the address pin
uint8_t pca9548a_init (pca9548a_handle_t *handle)
 initialize the chip
uint8_t pca9548a_deinit (pca9548a_handle_t *handle)
 close the chip
uint8_t pca9548a_set_channel (pca9548a_handle_t *handle, pca9548a_channel_t channel, pca9548a_bool_t enable)
 set channel
uint8_t pca9548a_get_channel (pca9548a_handle_t *handle, pca9548a_channel_t channel, pca9548a_bool_t *enable)
 get channel
uint8_t pca9548a_reset_bus (pca9548a_handle_t *handle)
 reset bus
uint8_t pca9548a_iic_read_command (pca9548a_handle_t *handle, uint8_t addr, uint8_t *buf, uint16_t len)
 iic read command
uint8_t pca9548a_iic_write_command (pca9548a_handle_t *handle, uint8_t addr, uint8_t *buf, uint16_t len)
 iic write command
uint8_t pca9548a_iic_read (pca9548a_handle_t *handle, uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
 iic read
uint8_t pca9548a_iic_write (pca9548a_handle_t *handle, uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
 iic write
uint8_t pca9548a_iic_read_address16 (pca9548a_handle_t *handle, uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
 iic read address16
uint8_t pca9548a_iic_write_address16 (pca9548a_handle_t *handle, uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
 iic write address16

Detailed Description

pca9548a base driver modules

Typedef Documentation

◆ pca9548a_handle_t

pca9548a handle structure definition

◆ pca9548a_info_t

pca9548a information structure definition

Enumeration Type Documentation

◆ pca9548a_address_t

pca9548a address enumeration definition

Enumerator
PCA9548A_ADDRESS_A000 

A2A1A0 000

PCA9548A_ADDRESS_A001 

A2A1A0 001

PCA9548A_ADDRESS_A010 

A2A1A0 010

PCA9548A_ADDRESS_A011 

A2A1A0 011

PCA9548A_ADDRESS_A100 

A2A1A0 100

PCA9548A_ADDRESS_A101 

A2A1A0 101

PCA9548A_ADDRESS_A110 

A2A1A0 110

PCA9548A_ADDRESS_A111 

A2A1A0 111

Definition at line 62 of file driver_pca9548a.h.

◆ pca9548a_bool_t

pca9548a bool enumeration definition

Enumerator
PCA9548A_BOOL_FALSE 

disable

PCA9548A_BOOL_TRUE 

enable

Definition at line 77 of file driver_pca9548a.h.

◆ pca9548a_channel_t

pca9548a channel enumeration definition

Enumerator
PCA9548A_CHANNEL_0 

channel 0

PCA9548A_CHANNEL_1 

channel 1

PCA9548A_CHANNEL_2 

channel 2

PCA9548A_CHANNEL_3 

channel 3

PCA9548A_CHANNEL_4 

channel 4

PCA9548A_CHANNEL_5 

channel 5

PCA9548A_CHANNEL_6 

channel 6

PCA9548A_CHANNEL_7 

channel 7

Definition at line 86 of file driver_pca9548a.h.

Function Documentation

◆ pca9548a_deinit()

uint8_t pca9548a_deinit ( pca9548a_handle_t * handle)

close the chip

Parameters
[in]*handlepointer to a pca9548a handle structure
Returns
status code
  • 0 success
  • 1 deinit failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 iic write failed
Note
none

Definition at line 244 of file driver_pca9548a.c.

◆ pca9548a_get_addr_pin()

uint8_t pca9548a_get_addr_pin ( pca9548a_handle_t * handle,
pca9548a_address_t * addr_pin )

get the address pin

Parameters
[in]*handlepointer to a pca9548a handle structure
[out]*addr_pinpointer to a chip address pins buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 81 of file driver_pca9548a.c.

◆ pca9548a_get_channel()

uint8_t pca9548a_get_channel ( pca9548a_handle_t * handle,
pca9548a_channel_t channel,
pca9548a_bool_t * enable )

get channel

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]channelinput channel
[out]*enablepointer to a bool value buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 373 of file driver_pca9548a.c.

◆ pca9548a_iic_read()

uint8_t pca9548a_iic_read ( pca9548a_handle_t * handle,
uint8_t addr,
uint8_t reg,
uint8_t * buf,
uint16_t len )

iic read

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]addriic address
[in]regregister address
[out]*bufpointer to a data buffer
[in]lenbuffer length
Returns
status code
  • 0 success
  • 1 iic read failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 471 of file driver_pca9548a.c.

◆ pca9548a_iic_read_address16()

uint8_t pca9548a_iic_read_address16 ( pca9548a_handle_t * handle,
uint8_t addr,
uint16_t reg,
uint8_t * buf,
uint16_t len )

iic read address16

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]addriic address
[in]regregister address
[out]*bufpointer to a data buffer
[in]lenbuffer length
Returns
status code
  • 0 success
  • 1 iic read failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 541 of file driver_pca9548a.c.

◆ pca9548a_iic_read_command()

uint8_t pca9548a_iic_read_command ( pca9548a_handle_t * handle,
uint8_t addr,
uint8_t * buf,
uint16_t len )

iic read command

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]addriic address
[out]*bufpointer to a data buffer
[in]lenbuffer length
Returns
status code
  • 0 success
  • 1 iic read failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 402 of file driver_pca9548a.c.

◆ pca9548a_iic_write()

uint8_t pca9548a_iic_write ( pca9548a_handle_t * handle,
uint8_t addr,
uint8_t reg,
uint8_t * buf,
uint16_t len )

iic write

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]addriic address
[in]regregister address
[in]*bufpointer to a data buffer
[in]lenbuffer length
Returns
status code
  • 0 success
  • 1 iic write failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 506 of file driver_pca9548a.c.

◆ pca9548a_iic_write_address16()

uint8_t pca9548a_iic_write_address16 ( pca9548a_handle_t * handle,
uint8_t addr,
uint16_t reg,
uint8_t * buf,
uint16_t len )

iic write address16

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]addriic address
[in]regregister address
[in]*bufpointer to a data buffer
[in]lenbuffer length
Returns
status code
  • 0 success
  • 1 iic write failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 576 of file driver_pca9548a.c.

◆ pca9548a_iic_write_command()

uint8_t pca9548a_iic_write_command ( pca9548a_handle_t * handle,
uint8_t addr,
uint8_t * buf,
uint16_t len )

iic write command

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]addriic address
[in]*bufpointer to a data buffer
[in]lenbuffer length
Returns
status code
  • 0 success
  • 1 iic write failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 436 of file driver_pca9548a.c.

◆ pca9548a_info()

uint8_t pca9548a_info ( pca9548a_info_t * info)

get chip's information

Parameters
[out]*infopointer to a pca9548a info structure
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 605 of file driver_pca9548a.c.

◆ pca9548a_init()

uint8_t pca9548a_init ( pca9548a_handle_t * handle)

initialize the chip

Parameters
[in]*handlepointer to a pca9548a handle structure
Returns
status code
  • 0 success
  • 1 iic or gpio initialization failed
  • 2 handle is NULL
  • 3 linked functions is NULL
  • 4 reset failed
  • 5 iic write failed
Note
none

Definition at line 105 of file driver_pca9548a.c.

◆ pca9548a_reset_bus()

uint8_t pca9548a_reset_bus ( pca9548a_handle_t * handle)

reset bus

Parameters
[in]*handlepointer to a pca9548a handle structure
Returns
status code
  • 0 success
  • 1 reset bus failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 294 of file driver_pca9548a.c.

◆ pca9548a_set_addr_pin()

uint8_t pca9548a_set_addr_pin ( pca9548a_handle_t * handle,
pca9548a_address_t addr_pin )

set the address pin

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]addr_pinchip address pins
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 60 of file driver_pca9548a.c.

◆ pca9548a_set_channel()

uint8_t pca9548a_set_channel ( pca9548a_handle_t * handle,
pca9548a_channel_t channel,
pca9548a_bool_t enable )

set channel

Parameters
[in]*handlepointer to a pca9548a handle structure
[in]channelinput channel
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set channel failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 339 of file driver_pca9548a.c.