pca9674a --- Driver I2C Expander¶
Module pca9674a cung cấp driver cho bộ mở rộng I/O 8-bit quasi-bidirectional NXP PCA9674A. Chip này cung cấp cổng I/O 8-bit qua I2C và một đường INT tích cực thấp sẽ xung mỗi khi bất kỳ chân đầu vào nào thay đổi trạng thái.
Mỗi chân (pin) là quasi-bidirectional: ghi 1 giải phóng chân (pin) về pull-up nội bộ yếu để nó hoạt động như đầu vào mà driver bên ngoài có thể kéo xuống thấp; ghi 0 tích cực kéo chân (pin) xuống thấp. Không có thanh ghi hướng riêng -- PCA9674A.read() trả về mức bên ngoài hiện tại của mọi chân (pin) bất kể giá trị đã được ghi lần cuối là gì.
Địa chỉ I2C 7-bit là 0x38 -- 0x3F tùy thuộc vào các chân (pin) strap A0/A1/A2; 0x3F (63) là mặc định (tất cả strap ở mức cao).
class PCA9674A -- bộ mở rộng I/O 8-bit¶
- class pca9674a.PCA9674A(bus: machine.I2C, irq_pin: str, address: int = 63, callback: Callable | None = None)¶
Tạo giao diện với bộ mở rộng I/O PCA9674A.
buslà busmachine.I2Cmà bộ mở rộng được kết nối vào.irq_pinlà nhãn chân (pin) trên MCU chủ được kết nối với đầu raINTcủa bộ mở rộng. Driver cấu hình nó là đầu vào với pull-up và theo dõi cạnh xuống của nó.addresslà địa chỉ I2C 7-bit của bộ mở rộng (0x38--0x3F). Mặc định là0x3F.callbackđược gọi trên cạnh xuống củairq_pinkhi bất kỳ trạng thái chân (pin) nào thay đổi. Nó nhận instancePCA9674Alàm tham số duy nhất; trạng thái chân (pin) mới có thể được đọc bằngread(). TruyềnNone(mặc định) để sử dụng theo kiểu thăm dò.