PCF8574 driver to set pin mode, read and write digital signal 3.3v
Project description
Python driver for PCF8574 8bit IO Expander board Developed for the Raspberry Pi, requires the python-smbus2 package to access the I2C bus.
Tested on raspberry pi 3b plus with two PCF8574 boards.
First install smbus2 using: pip install smbus2
Usage Example:
import pcf8574_io
# you can use up to 8 PCF8574 boards 0x20 and 0x21 are the I2C addresses p1 = pcf8574_io.PCF(0x20) p2 = pcf8574_io.PCF(0x21)
# p0 to p7 are the pins name # INPUT or OUTPUT is the mode p1.pin_mode(“p0”, “INPUT”) print(p1.digital_read(“p0”))
# you can write and read the output pins # use HIGH or LOW to set the pin HIGH is +3.3v LOW is 0v p1.pin_mode(“p4”, “OUTPUT”) p1.digital_write(“p4”, “HIGH”) print(p1.digital_read(“p4”))
# you can read and write up to 8 boards at the same time just make sure you ech board has a different address p2.pin_mode(“p7”, “OUTPUT”) p2.digital_write(“p7”, “LOW”) print(p2.digital_read(“p7”))
/n/nhttps://github.com/ahmed9378/pcf8574_io
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.