clasa PinAF – funcții alternative ale pinului

Fiecare pin STM32 poate funcționa ca GPIO simplu sau ca una dintre mai multe funcții alternative de periferic (UART4_TX, I2C2_SCL, TIM2_CH3, etc.). Un obiect PinAF descrie o singură funcție alternativă care este conectată la un anumit pin și este ceea ce returnează Pin.af_list().

Model de utilizare:

p4 = pyb.Pin.board.P4
p4_af = p4.af_list()

p4_af conține acum lista de obiecte PinAF disponibile pe P4. Lista exactă depinde de MCU-ul STM32 al camerei OpenMV Cam utilizate.

În mod normal, fiecare driver de periferic configurează automat funcția alternativă de care are nevoie. Când aceeași funcție de periferic este conectată la mai mulți pini, sau mai multe funcții împart un pin, puteți alege una în mod explicit prin Pin.ALT fie după nume:

pin = pyb.Pin(pyb.Pin.board.P4, mode=pyb.Pin.ALT, alt=pyb.Pin.AF1_TIM2)

fie după indexul brut:

pin = pyb.Pin(pyb.Pin.board.P4, mode=pyb.Pin.ALT, alt=1)

Constructori

class pyb.PinAF

Obiectele PinAF nu sunt construite direct. Folosiți Pin.af_list() pentru a enumera funcțiile alternative disponibile pe un anumit pin.

Metode

__str__() str

Returnează un șir care descrie funcția alternativă (numele și indexul acesteia).

index() int

Returnează indexul funcției alternative. Același număr întreg este acceptat de argumentul alt al Pin.init().

name() str

Returnează numele funcției alternative, de exemplu "TIM2_CH3".

reg() int

Returnează adresa registrului de bază al perifericului atribuit acestei funcții alternative. De exemplu, dacă funcția alternativă ar fi TIM2_CH3, aceasta ar returna stm.TIM2.