class PinAF – funções alternativas de pino

Cada pino do STM32 pode servir como GPIO simples ou como uma de várias funções alternativas de periférico (UART4_TX, I2C2_SCL, TIM2_CH3, etc.). Um objeto PinAF descreve uma única função alternativa que está conectada a um pino específico, e é o que Pin.af_list() retorna.

Modelo de Uso:

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

p4_af agora contém a lista de objetos PinAF disponíveis em P4. A lista exata depende do MCU STM32 da OpenMV Cam em uso.

Normalmente cada driver de periférico configura automaticamente a função alternativa de que precisa. Quando a mesma função de periférico está conectada a mais de um pino, ou várias funções compartilham um pino, você pode escolher uma explicitamente através de Pin.ALT seja por nome:

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

ou por índice bruto:

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

Construtores

class pyb.PinAF

Objetos PinAF não são construídos diretamente. Use Pin.af_list() para enumerar as funções alternativas disponíveis em um dado pino.

Métodos

__str__() str

Retorna uma string descrevendo a função alternativa (seu nome e índice).

index() int

Retorna o índice da função alternativa. O mesmo inteiro é aceito pelo argumento alt de Pin.init().

name() str

Retorna o nome da função alternativa, por exemplo "TIM2_CH3".

reg() int

Retorna o endereço base do registrador do periférico atribuído a esta função alternativa. Por exemplo, se a função alternativa fosse TIM2_CH3, isto retornaria stm.TIM2.