pca9674a --- Driver I2C Expander¶
Modul pca9674a menyediakan driver untuk I/O expander 8-bit quasi-bidirectional NXP PCA9674A. Chip ini mengekspos port I/O 8-bit melalui I2C dan jalur INT aktif-rendah yang berpulsa setiap kali pin input berubah keadaan.
Setiap pin bersifat quasi-bidirectional: menulis 1 melepaskan pin ke pull-up internal yang lemah sehingga bertindak sebagai input yang dapat ditarik rendah oleh driver eksternal; menulis 0 secara aktif menggerakkan pin ke kondisi rendah. Tidak ada register arah terpisah -- PCA9674A.read() mengembalikan level eksternal saat ini dari setiap pin tanpa memandang apa yang terakhir ditulis.
Alamat I2C 7-bit adalah 0x38 -- 0x3F tergantung pada pin strap A0/A1/A2; 0x3F (63) adalah default (semua strap tinggi).
class PCA9674A -- I/O expander 8-bit¶
- class pca9674a.PCA9674A(bus: machine.I2C, irq_pin: str, address: int = 63, callback: Callable | None = None)¶
Membuat antarmuka ke I/O expander PCA9674A.
busadalah busmachine.I2Ctempat expander terhubung.irq_pinadalah label pin pada MCU host yang terhubung ke outputINTexpander. Driver mengonfigurasinya sebagai input dengan pull-up dan memantau tepi turunnya.addressadalah alamat I2C 7-bit expander (0x38--0x3F). Default-nya adalah0x3F.callbackdipanggil pada tepi turunirq_pinsaat ada perubahan keadaan pin. Menerima instansPCA9674Asebagai satu-satunya argumen; keadaan pin baru dapat dibaca denganread(). BerikanNone(default) untuk penggunaan polled.