PCF8574 / PCF8575 Arduino library (version 2.0)
Switch branches/tags
Nothing to show
Clone or download
Latest commit c3417f4 Nov 28, 2013
Failed to load latest commit information.
PCF8574 Update Sep 16, 2013
PCF8575 EXP. PCF8575 variant Nov 28, 2013
.gitattributes Initial commit Aug 21, 2013
.gitignore Initial commit Aug 21, 2013
README.md Initial commit Aug 21, 2013


PCF8574 Arduino library

By SkyWodd


The "PCF8574" chip is an I2C I/O expander that free some of your Arduino pins by controlling them over I2C. The PCF8574 is directly powered by the 5v rail of your arduino and let you control 8 I/O with only two common wires (I2C bus) !

Remarks: the PCF8575 is the same chip as the PCF8574 but with 16 I/O instead of 8. A special variant of this library for PCF8575 is also available.

Library API

This library has the same API as the standard Arduino GPIO API (digitalRead, digitalWrite, ...).

This library also support interrupts on any of the PCF8574 pins. To do this the library internaly use the "Pin Change Interrupt (PCINT)" capability of AVR microcontrolers. By this way any pins of your Arduino can be used to wire the "INT" pin of the PCF8574.

Remarks: the interrupt "check and process" routine of the library is public and require the user to provide an "global scope" wrapping fonction to work. This is do in order to allow multiple PCF8574 to use the same interrupt pin ("INT" pin) on the Arduino board with call to multiple PCF8574 class instances.