class TimerChannel – een kanaal voor een timer instellen¶
Een TimerChannel vertegenwoordigt één van de output-compare- of input-capture-kanalen van een Timer. Kanalen worden niet rechtstreeks geconstrueerd; ze worden geretourneerd door Timer.channel(), die het kanaal zowel configureert als het wrapperobject teruggeeft:
timer = pyb.Timer(2, freq=1000)
ch2 = timer.channel(2, pyb.Timer.PWM, pin=pyb.Pin.board.P1,
pulse_width_percent=25)
De onderstaande methoden passen het compare/capture-register van het kanaal tijdens runtime aan en installeren callbacks per kanaal.
Constructors¶
- class pyb.TimerChannel¶
TimerChannel-objecten worden niet rechtstreeks geconstrueerd. GebruikTimer.channel()om er een te verkrijgen.Methods¶
- callback(fun: Callable[[Timer], None] | None) None¶
Stel de functie in die wordt aangeroepen wanneer het timerkanaal activeert. Aan
funwordt 1 argument doorgegeven, het timerobject. AlsfunNoneis, wordt de callback uitgeschakeld.
- capture(value: int | None = None) int | None¶
Verkrijg of stel de capture-waarde in die aan een kanaal is gekoppeld. capture, compare en pulse_width zijn allemaal aliassen voor dezelfde functie. capture is de logische naam om te gebruiken wanneer het kanaal in input capture-modus staat.
- compare(value: int | None = None) int | None¶
Verkrijg of stel de compare-waarde in die aan een kanaal is gekoppeld. capture, compare en pulse_width zijn allemaal aliassen voor dezelfde functie. compare is de logische naam om te gebruiken wanneer het kanaal in output compare-modus staat.
- pulse_width(value: int | None = None) int | None¶
Verkrijg of stel de pulsbreedtewaarde in die aan een kanaal is gekoppeld. capture, compare en pulse_width zijn allemaal aliassen voor dezelfde functie. pulse_width is de logische naam om te gebruiken wanneer het kanaal in PWM-modus staat.
In edge aligned-modus komt een pulse_width van
period + 1overeen met een duty cycle van 100%. In center aligned-modus komt een pulsbreedte vanperiodovereen met een duty cycle van 100%
- pulse_width_percent(value: int | float | None = None) int | float | None¶
Verkrijg of stel het pulsbreedtepercentage in dat aan een kanaal is gekoppeld. De waarde is een getal tussen 0 en 100 en stelt het percentage van de timerperiode in waarvoor de puls actief is. De waarde kan een geheel getal of een drijvendekommagetal zijn voor meer nauwkeurigheid. Een waarde van 25 geeft bijvoorbeeld een duty cycle van 25%.