As a long time user of Arduino and the various public library I have decided to give back to the the community.
Please note this is my first public release of any library i created.
NXP's PCAL6524 is a 24 bit general purpose GPIO using the I2C buss.
It comes in a HUQFN32 package and a VFBGA36 package.
This library was tested with the HUQFN32 package on a breakout board.
The 24 GPIO bits are available in 3 banks of 8. P0_0 - P0-7, P1_0 - P1_7, P2_0 - P2_7.
Each pin can be independently set as either a Input or output.
Additionally each pin set as an input can be set to trigger an interrupt pin.
(This function is not incorporated currently in the library but is planned in the future)
Several other functions are available on the chip but no yet included in the library, including: Logic Inversion, Switch Debounceing, etc...
Each of the NXP can be address with up to 4 different address: 0x20, 0x21, 0x22, 0x23. The current library is set for 0x22 to be the default address.
This library will allow for individual pins to set as Input or Outputs with the following command:
.remotepinMode(PIN, MODE);
Each pin set as an output value can be changed with the following command:
.remotedigitalWrite(PIN, HIGH OR LOW);
Each pin set as an input can be read with the following comand:
.remotedigtalRead(PIN);
The library can be found on github at the link below:
The Data Sheet for this IC can be found here: