klasa PinAF – funkcje alternatywne pinów#

Każdy pin STM32 może pełnić rolę zwykłego GPIO lub jednej z kilku funkcji alternatywnych urządzeń peryferyjnych (UART4_TX, I2C2_SCL, TIM2_CH3 itd.). Obiekt PinAF opisuje pojedynczą funkcję alternatywną podłączoną do konkretnego pinu i jest tym, co zwraca Pin.af_list().

Model użycia:

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

p4_af zawiera teraz listę obiektów PinAF dostępnych na P4. Dokładna lista zależy od mikrokontrolera STM32 na używanej kamerze OpenMV Cam.

Zwykle każdy sterownik urządzenia peryferyjnego automatycznie konfiguruje potrzebną mu funkcję alternatywną. Gdy ta sama funkcja peryferyjna jest podłączona do więcej niż jednego pinu lub kilka funkcji współdzieli jeden pin, można wybrać jedną z nich jawnie przez Pin.ALT – po nazwie:

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

lub po surowym indeksie:

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

Konstruktory#

class pyb.PinAF#

Obiekty PinAF nie są konstruowane bezpośrednio. Użyj Pin.af_list(), aby wyliczyć funkcje alternatywne dostępne na danym pinie.

Metody#

__str__() str#

Zwraca łańcuch znaków opisujący funkcję alternatywną (jej nazwę i indeks).

index() int#

Zwraca indeks funkcji alternatywnej. Ta sama liczba całkowita jest akceptowana przez argument alt metody Pin.init().

name() str#

Zwraca nazwę funkcji alternatywnej, na przykład "TIM2_CH3".

reg() int#

Zwraca adres bazowy rejestru urządzenia peryferyjnego przypisanego do tej funkcji alternatywnej. Na przykład, gdyby funkcją alternatywną było TIM2_CH3, zwróciłoby to stm.TIM2.