pca9674a — I2C Genişletici Sürücüsü¶
pca9674a modülü, NXP PCA9674A 8 bitlik yarı çift yönlü G/Ç genişletici için bir sürücü sağlar. Çip, I2C üzerinden 8 bitlik bir G/Ç bağlantı noktası ve herhangi bir giriş pininin durumu her değiştiğinde darbe veren etkin-düşük bir INT hattı açığa çıkarır.
Her pin yarı çift yönlüdür: 1 yazmak, pini zayıf bir dahili yukarı çekme direncine bırakır, böylece harici bir sürücünün düşük çekebileceği bir giriş gibi davranır; 0 yazmak ise pini etkin olarak düşük seviyeye sürer. Ayrı bir yön yazmacı yoktur – PCA9674A.read(), son yazılan değerden bağımsız olarak her pinin geçerli harici seviyesini döndürür.
7 bitlik I2C adresi, A0/A1/A2 strap pinlerine bağlı olarak 0x38 – 0x3F arasındadır; varsayılan değer 0x3F (63) şeklindedir (tüm strap’ler yüksek).
class PCA9674A – 8 bitlik G/Ç genişletici¶
- class pca9674a.PCA9674A(bus: machine.I2C, irq_pin: str, address: int = 63, callback: Callable | None = None)¶
Bir PCA9674A G/Ç genişleticiye arayüz oluşturur.
bus, genişleticinin bağlı olduğumachine.I2Cveri yoludur.irq_pin, ana MCU üzerinde genişleticininINTçıkışına bağlı pin etiketidir. Sürücü, bunu yukarı çekme dirençli bir giriş olarak yapılandırır ve düşen kenarını izler.address, genişleticinin 7 bitlik I2C adresidir (0x38–0x3F). Varsayılan değeri0x3Fşeklindedir.callback, herhangi bir pin durumu değiştiğindeirq_pinpininin düşen kenarında çağrılır. Tek argüman olarakPCA9674Aörneğini alır; yeni pin durumuread()ile okunabilir. Yoklama tabanlı kullanım içinNone(varsayılan) geçirin.