Device::Chip::PCF8575 - chip driver for a PCF8575 or PCA8575
This Device::Chip subclass provides specific communication to a NXP or Texas Instruments PCF8575 attached to a computer via an I²C adapter. Due to hardware similarity this can also drive a PCA8575.
The reader is presumed to be familiar with the general operation of this chip; the documentation here will not attempt to explain or define chip-specific concepts or features, only the use of this module to access them.
The I²C address of the device. Can be specified in decimal, octal or hex with leading
The following methods documented in an
await expression return Future instances.
await $chip->write( $val );
Sets the value of the GPIO pins, as a 16-bit integer.
Pins set low will sink current suitable for signalling or driving an LED. Pins set high will source current via a weak current-source to act as a pull-up for an active-low input signal, such as a button.
$val = await $chip->read;
Reads the current logic levels on the GPIO pins, returned as a 16-bit integer. Pins of interest as inputs should have previously been set to high level using the "write" method.
$adapter = $chip->as_adapter
Returns a new object implementing the Device::Chip::Adapter interface which allows access to the GPIO pins of the chip as if it was a GPIO protocol adapter. The returned instance supports the following methods:
$protocol = await $adapter->make_protocol( 'GPIO' ) $protocol->list_gpios await $protocol->write_gpios await $protocol->read_gpios await $protocol->tris_gpios
Paul Evans <firstname.lastname@example.org>