klasa TimerChannel – konfiguracja kanału dla timera¶
Obiekt TimerChannel reprezentuje jeden z kanałów porównania na wyjściu (output-compare) lub przechwytywania na wejściu (input-capture) obiektu Timer. Kanały nie są tworzone bezpośrednio; są zwracane przez Timer.channel(), która jednocześnie konfiguruje kanał i zwraca obiekt opakowujący:
timer = pyb.Timer(2, freq=1000)
ch2 = timer.channel(2, pyb.Timer.PWM, pin=pyb.Pin.board.P1,
pulse_width_percent=25)
Poniższe metody dostosowują rejestr porównania/przechwytywania kanału w czasie działania programu i instalują wywołania zwrotne dla poszczególnych kanałów.
Konstruktory¶
- class pyb.TimerChannel¶
Obiekty
TimerChannelnie są tworzone bezpośrednio. Aby uzyskać taki obiekt, użyjTimer.channel().Metody¶
- callback(fun: Callable[[Timer], None] | None) None¶
Ustawia funkcję wywoływaną w momencie wyzwolenia kanału timera. Do
funprzekazywany jest 1 argument - obiekt timera. Jeślifunma wartośćNone, wywołanie zwrotne zostanie wyłączone.
- capture(value: int | None = None) int | None¶
Pobiera lub ustawia wartość przechwytywania (capture) powiązaną z kanałem. capture, compare oraz pulse_width są aliasami tej samej funkcji. capture to logiczna nazwa używana, gdy kanał jest w trybie przechwytywania na wejściu (input capture).
- compare(value: int | None = None) int | None¶
Pobiera lub ustawia wartość porównania (compare) powiązaną z kanałem. capture, compare oraz pulse_width są aliasami tej samej funkcji. compare to logiczna nazwa używana, gdy kanał jest w trybie porównania na wyjściu (output compare).
- pulse_width(value: int | None = None) int | None¶
Pobiera lub ustawia wartość szerokości impulsu (pulse_width) powiązaną z kanałem. capture, compare oraz pulse_width są aliasami tej samej funkcji. pulse_width to logiczna nazwa używana, gdy kanał jest w trybie PWM.
W trybie wyrównania do zbocza (edge aligned) wartość pulse_width równa
period + 1odpowiada wypełnieniu 100%. W trybie wyrównania do środka (center aligned) szerokość impulsu równaperiododpowiada wypełnieniu 100%.
- pulse_width_percent(value: int | float | None = None) int | float | None¶
Pobiera lub ustawia procentową szerokość impulsu powiązaną z kanałem. Wartość jest liczbą z zakresu od 0 do 100 i określa procent okresu timera, przez który impuls jest aktywny. Wartość może być liczbą całkowitą lub zmiennoprzecinkową dla większej dokładności. Na przykład wartość 25 daje wypełnienie 25%.