třída TimerChannel – nastavení kanálu pro časovač

TimerChannel představuje jeden z kanálů porovnání výstupu (output-compare) nebo zachycení vstupu (input-capture) objektu Timer. Kanály se nekonstruují přímo; vrací je metoda Timer.channel(), která kanál nakonfiguruje a zároveň vrátí obalový objekt:

timer = pyb.Timer(2, freq=1000)
ch2 = timer.channel(2, pyb.Timer.PWM, pin=pyb.Pin.board.P1,
                    pulse_width_percent=25)

Níže uvedené metody za běhu upravují porovnávací/zachytávací registr kanálu a instalují callbacky jednotlivých kanálů.

Konstruktory

class pyb.TimerChannel

Objekty TimerChannel se nekonstruují přímo. Pro jejich získání použijte Timer.channel().

Metody

callback(fun: Callable[[Timer], None] | None) None

Nastaví funkci, která se má zavolat, když je kanál časovače spuštěn. fun se předává 1 argument, objekt časovače. Pokud je fun None, callback bude zakázán.

capture(value: int | None = None) int | None

Získá nebo nastaví hodnotu zachycení (capture) přiřazenou ke kanálu. capture, compare a pulse_width jsou všechno aliasy téže funkce. capture je logický název, který se používá, když je kanál v režimu zachycení vstupu.

compare(value: int | None = None) int | None

Získá nebo nastaví hodnotu porovnání (compare) přiřazenou ke kanálu. capture, compare a pulse_width jsou všechno aliasy téže funkce. compare je logický název, který se používá, když je kanál v režimu porovnání výstupu.

pulse_width(value: int | None = None) int | None

Získá nebo nastaví hodnotu šířky pulzu (pulse_width) přiřazenou ke kanálu. capture, compare a pulse_width jsou všechno aliasy téže funkce. pulse_width je logický název, který se používá, když je kanál v režimu PWM.

V režimu zarovnání podle hrany odpovídá pulse_width period + 1 střídě 100 %. V režimu zarovnání na střed odpovídá šířka pulzu period střídě 100 %

pulse_width_percent(value: int | float | None = None) int | float | None

Získá nebo nastaví procentuální šířku pulzu přiřazenou ke kanálu. Hodnota je číslo mezi 0 a 100 a nastavuje procento periody časovače, po které je pulz aktivní. Hodnota může být celé nebo desetinné číslo pro vyšší přesnost. Například hodnota 25 dává střídu 25 %.