GPIO_NXP_Arduino 0.1.0
GPIO device operation sample code for Arduino
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | List of all members
PCAL6534 Class Reference

#include <GPIO_NXP.h>

Inheritance diagram for PCAL6534:
PCAL6xxx_base GPIO_base

Public Types

enum  reg_num {
  Input_Port_0 , Input_Port_1 , Input_Port_2 , Input_Port_3 ,
  Input_Port_4 , Output_Port_0 , Output_Port_1 , Output_Port_2 ,
  Output_Port_3 , Output_Port_4 , Polarity_Inversion_port_0 , Polarity_Inversion_port_1 ,
  Polarity_Inversion_port_2 , Polarity_Inversion_port_3 , Polarity_Inversion_port_4 , Configuration_port_0 ,
  Configuration_port_1 , Configuration_port_2 , Configuration_port_3 , Configuration_port_4 ,
  Output_drive_strength_register_port_0A = 0x30 , Output_drive_strength_register_port_0B , Output_drive_strength_register_port_1A , Output_drive_strength_register_port_1B ,
  Output_drive_strength_register_port_2A , Output_drive_strength_register_port_2B , Output_drive_strength_register_port_3A , Output_drive_strength_register_port_3B ,
  Output_drive_strength_register_port_4A , reserved0 , Input_latch_register_port_0 , Input_latch_register_port_1 ,
  Input_latch_register_port_2 , Input_latch_register_port_3 , Input_latch_register_port_4 , Pull_up_pull_down_enable_register_port_0 ,
  Pull_up_pull_down_enable_register_port_1 , Pull_up_pull_down_enable_register_port_2 , Pull_up_pull_down_enable_register_port_3 , Pull_up_pull_down_enable_register_port_4 ,
  Pull_up_pull_down_selection_register_port_0 , Pull_up_pull_down_selection_register_port_1 , Pull_up_pull_down_selection_register_port_2 , Pull_up_pull_down_selection_register_port_3 ,
  Pull_up_pull_down_selection_register_port_4 , Interrupt_mask_register_port_0 , Interrupt_mask_register_port_1 , Interrupt_mask_register_port_2 ,
  Interrupt_mask_register_port_3 , Interrupt_mask_register_port_4 , Interrupt_status_register_port_0 , Interrupt_status_register_port_1 ,
  Interrupt_status_register_port_2 , Interrupt_status_register_port_3 , Interrupt_status_register_port_4 , Output_port_configuration_register ,
  Interrupt_edge_register_port_0A , Interrupt_edge_register_port_0B , Interrupt_edge_register_port_1A , Interrupt_edge_register_port_1B ,
  Interrupt_edge_register_port_2A , Interrupt_edge_register_port_2B , Interrupt_edge_register_port_3A , Interrupt_edge_register_port_3B ,
  Interrupt_edge_register_port_4A , reserved1 , Interrupt_clear_register_port_0 , Interrupt_clear_register_port_1 ,
  Interrupt_clear_register_port_2 , Interrupt_clear_register_port_3 , Interrupt_clear_register_port_4 , Input_status_port_0 ,
  Input_status_port_1 , Input_status_port_2 , Input_status_port_3 , Input_status_port_4 ,
  Individual_pin_output_port_0_configuration_register , Individual_pin_output_port_1_configuration_register , Individual_pin_output_port_2_configuration_register , Individual_pin_output_port_3_configuration_register ,
  Individual_pin_output_port_4_configuration_register , Switch_debounce_enable_0 , Switch_debounce_enable_1 , Switch_debounce_count
}
 
- Public Types inherited from GPIO_base
enum  board { NONE , ARDUINO_SHIELD }
 

Public Member Functions

 PCAL6534 (uint8_t i2c_address=(0x44 > > 1)+0)
 
- Public Member Functions inherited from PCAL6xxx_base
 PCAL6xxx_base (uint8_t i2c_address, const int nbits, const uint8_t arp[], uint8_t ai)
 
- Public Member Functions inherited from GPIO_base
 GPIO_base (uint8_t i2c_address, const int nbits, const uint8_t *arp, uint8_t ai)
 
virtual ~GPIO_base ()
 
void begin (board env=NONE)
 
void output (int port, uint8_t value, uint8_t mask=0)
 
void output (uint8_t *vp)
 
uint8_t input (int port)
 
uint8_t * input (uint8_t *vp)
 
void config (int port, uint8_t config, uint8_t mask=0)
 
void config (uint8_t *vp)
 
void write_port (access_word w, uint8_t *vp)
 
void write_port16 (access_word w, uint16_t *vp)
 
uint8_t * read_port (access_word w, uint8_t *vp)
 
uint16_t * read_port16 (access_word w, uint16_t *vp)
 
void write_port (access_word w, uint8_t value, int port_num=0)
 
void write_port16 (access_word w, uint16_t value, int port_num=0)
 
uint8_t read_port (access_word w, int port_num=0)
 
uint16_t read_port16 (access_word w, int port_num=0)
 

Static Public Attributes

static constexpr uint8_t access_ref [NUM_access_word]
 

Additional Inherited Members

- Static Public Member Functions inherited from GPIO_base
static void print_bin (uint8_t v)
 
- Public Attributes inherited from GPIO_base
const int n_bits
 
const int n_ports
 

Detailed Description

PCAL6534 class

Definition at line 371 of file GPIO_NXP.h.

Member Enumeration Documentation

◆ reg_num

Name of the PCAL6534 registers

Definition at line 375 of file GPIO_NXP.h.

Constructor & Destructor Documentation

◆ PCAL6534()

PCAL6534::PCAL6534 ( uint8_t  i2c_address = (0x44 >> 1) + 0)

Definition at line 238 of file GPIO_NXP.cpp.

◆ ~PCAL6534()

PCAL6534::~PCAL6534 ( )
virtual

Definition at line 243 of file GPIO_NXP.cpp.

Member Data Documentation

◆ access_ref

constexpr uint8_t PCAL6534::access_ref
staticconstexpr
Initial value:
= {
Input_Port_0,
Output_Port_0,
Polarity_Inversion_port_0,
Configuration_port_0,
Output_drive_strength_register_port_0A,
Input_latch_register_port_0,
Pull_up_pull_down_enable_register_port_0,
Pull_up_pull_down_selection_register_port_0,
Interrupt_mask_register_port_0,
Interrupt_status_register_port_0,
Output_port_configuration_register,
}

Definition at line 406 of file GPIO_NXP.h.


The documentation for this class was generated from the following files: