pca9674a — מנהל התקן מרחיב I2C¶
המודול pca9674a מספק מנהל התקן עבור מרחיב הקלט/פלט מסוג quasi-bidirectional של 8 ביט NXP PCA9674A. השבב חושף פורט קלט/פלט של 8 ביט דרך I2C וקו INT פעיל-נמוך הפועם בכל פעם שפין קלט כלשהו משנה את מצבו.
כל פין הוא quasi-bidirectional: כתיבת 1 משחררת את הפין ל-pull-up פנימי חלש כך שהוא מתפקד כקלט שדרייבר חיצוני יכול למשוך לנמוך; כתיבת 0 מנעה באופן פעיל את הפין לנמוך. אין אוגר כיוון נפרד – PCA9674A.read() מחזירה את הרמה החיצונית הנוכחית של כל פין ללא קשר למה שנכתב לאחרונה.
כתובת ה-I2C של 7 ביט היא 0x38 – 0x3F בהתאם לפיני הקיבוע A0/A1/A2; 0x3F (63) היא ברירת המחדל (כל פיני הקיבוע גבוהים).
class PCA9674A – מרחיב קלט/פלט של 8 ביט¶
- class pca9674a.PCA9674A(bus: machine.I2C, irq_pin: str, address: int = 63, callback: Callable | None = None)¶
יוצרת ממשק למרחיב קלט/פלט מסוג PCA9674A.
busהוא ה-bus מסוגmachine.I2Cשאליו מחובר המרחיב.irq_pinהוא תווית הפין ב-MCU המארח המחובר לפלט ה-INTשל המרחיב. מנהל ההתקן מגדיר אותו כקלט עם pull-up ועוקב אחר הקצה היורד שלו.addressהיא כתובת ה-I2C של 7 ביט של המרחיב (0x38–0x3F). ברירת המחדל היא0x3F.callbackמופעלת בקצה היורד שלirq_pinכאשר מצב פין כלשהו משתנה. היא מקבלת את המופעPCA9674Aכארגומנט היחיד שלה; ניתן לקרוא את מצב הפין החדש באמצעותread(). העבירוNone(ברירת המחדל) לשימוש בסקירה (polled).