classe TimerChannel – configurar um canal para um temporizador¶
Um TimerChannel representa um dos canais de comparação de saída ou captura de entrada de um Timer. Os canais não são construídos diretamente; são devolvidos por Timer.channel(), que tanto configura o canal como devolve o objeto wrapper:
timer = pyb.Timer(2, freq=1000)
ch2 = timer.channel(2, pyb.Timer.PWM, pin=pyb.Pin.board.P1,
pulse_width_percent=25)
Os métodos abaixo ajustam o registo de comparação/captura do canal em tempo de execução e instalam callbacks por canal.
Construtores¶
- class pyb.TimerChannel¶
Os objetos
TimerChannelnão são construídos diretamente. UtilizeTimer.channel()para obter um.Métodos¶
- callback(fun: Callable[[Timer], None] | None) None¶
Define a função a chamar quando o canal do temporizador é acionado.
funrecebe 1 argumento, o objeto temporizador. SefunforNone, o callback será desativado.
- capture(value: int | None = None) int | None¶
Obtém ou define o valor de captura associado a um canal. capture, compare e pulse_width são todos aliases para a mesma função. capture é o nome lógico a usar quando o canal está no modo de captura de entrada.
- compare(value: int | None = None) int | None¶
Obtém ou define o valor de comparação associado a um canal. capture, compare e pulse_width são todos aliases para a mesma função. compare é o nome lógico a usar quando o canal está no modo de comparação de saída.
- pulse_width(value: int | None = None) int | None¶
Obtém ou define o valor de largura de pulso associado a um canal. capture, compare e pulse_width são todos aliases para a mesma função. pulse_width é o nome lógico a usar quando o canal está no modo PWM.
No modo de alinhamento de flanco, um pulse_width de
period + 1corresponde a um ciclo de trabalho de 100%. No modo de alinhamento central, um pulse_width deperiodcorresponde a um ciclo de trabalho de 100%.
- pulse_width_percent(value: int | float | None = None) int | float | None¶
Obtém ou define a percentagem de largura de pulso associada a um canal. O valor é um número entre 0 e 100 e define a percentagem do período do temporizador durante a qual o pulso está ativo. O valor pode ser um inteiro ou um número em vírgula flutuante para maior precisão. Por exemplo, um valor de 25 dá um ciclo de trabalho de 25%.