класс TimerChannel – настройка канала для таймера

Объект TimerChannel представляет один из каналов сравнения выхода или захвата входа объекта Timer. Каналы не создаются напрямую; они возвращаются методом Timer.channel(), который одновременно настраивает канал и возвращает объект-обёртку:

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

Приведённые ниже методы изменяют регистр сравнения/захвата канала во время выполнения и устанавливают функции обратного вызова для каждого канала.

Конструкторы

class pyb.TimerChannel

Объекты TimerChannel не создаются напрямую. Используйте Timer.channel(), чтобы получить такой объект.

Методы

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

Задаёт функцию, вызываемую при срабатывании канала таймера. fun передаётся 1 аргумент - объект таймера. Если fun равно None, то функция обратного вызова будет отключена.

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

Получает или устанавливает значение захвата, связанное с каналом. capture, compare и pulse_width являются псевдонимами одной и той же функции. capture – это логическое имя, используемое, когда канал находится в режиме захвата входа.

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

Получает или устанавливает значение сравнения, связанное с каналом. capture, compare и pulse_width являются псевдонимами одной и той же функции. compare – это логическое имя, используемое, когда канал находится в режиме сравнения выхода.

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

Получает или устанавливает значение ширины импульса, связанное с каналом. capture, compare и pulse_width являются псевдонимами одной и той же функции. pulse_width – это логическое имя, используемое, когда канал находится в режиме ШИМ.

В режиме выравнивания по фронту ширина импульса period + 1 соответствует коэффициенту заполнения 100%. В режиме центрального выравнивания ширина импульса period соответствует коэффициенту заполнения 100%

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

Получает или устанавливает процентное значение ширины импульса, связанное с каналом. Значение представляет собой число от 0 до 100 и задаёт процент периода таймера, в течение которого импульс активен. Значение может быть целым числом или числом с плавающей точкой для большей точности. Например, значение 25 даёт коэффициент заполнения 25%.