MicroPython:Библиотеки/machine.TimerWiPy: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) Нет описания правки |
Myagkij (обсуждение | вклад) Нет описания правки |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 5: | Строка 5: | ||
=Класс TimerWiPy – управление аппаратными таймерами<ref>[http://docs.micropython.org/en/latest/library/machine.TimerWiPy.html docs.micropython.org - class TimerWiPy – control hardware timers]</ref>= | =Класс TimerWiPy – управление аппаратными таймерами<ref>[http://docs.micropython.org/en/latest/library/machine.TimerWiPy.html docs.micropython.org - class TimerWiPy – control hardware timers]</ref>= | ||
{{ | {{Примечание1|1=Этот класс – это нестандартная реализация класса Timer для [[WiPy]]. На [[WiPy]] он именуется machine.Timer, но в документации ниже он именуется machine.TimerWiPy, чтобы отличить его от более общего класса machine.Timer.}} | ||
Аппаратные таймеры нужны для работы с периодами и событиями. Таймеры – это, возможно, самый универсальный и неоднородный тип оборудования в [[микроконтроллер]]ах и [[SoC-система]]х. Таймеры, установленные в разные модели, могут очень сильно отличаться друг от друга. В [[MicroPython]]’овском классе Timer определена базовая операция периодического запуска функции обратного вызова через заданное время (или один раз после задержки). Но в то же время этот класс позволяет задавать более нестандартное поведение для отдельных плат (не портируемое на другие платы). | Аппаратные таймеры нужны для работы с периодами и событиями. Таймеры – это, возможно, самый универсальный и неоднородный тип оборудования в [[микроконтроллер]]ах и [[SoC-система]]х. Таймеры, установленные в разные модели, могут очень сильно отличаться друг от друга. В [[MicroPython]]’овском классе Timer определена базовая операция периодического запуска функции обратного вызова через заданное время (или один раз после задержки). Но в то же время этот класс позволяет задавать более нестандартное поведение для отдельных плат (не портируемое на другие платы). | ||
Строка 11: | Строка 11: | ||
О важных ограничениях использования функций обратного вызова в классе Timer читайте [http://docs.micropython.org/en/latest/library/machine.html#machine-callbacks тут]. | О важных ограничениях использования функций обратного вызова в классе Timer читайте [http://docs.micropython.org/en/latest/library/machine.html#machine-callbacks тут]. | ||
{{ | {{Примечание1|1=Внутри прерываний память выделять нельзя, и поэтому исключения, возбуждаемые внутри обработчиков (функций обратного вызова), будут малоинформативны. О том, как обойти это ограничение, читайте в описании [http://docs.micropython.org/en/latest/library/micropython.html#micropython.alloc_emergency_exception_buf метода micropython.alloc_emergency_exception_buf()].}} | ||
==Конструкторы== | ==Конструкторы== | ||
Строка 27: | Строка 27: | ||
* [[MicroPython:Библиотеки/machine.TimerWiPy/TimerWiPy.ONE_SHOT|TimerWiPy.ONE_SHOT]] | * [[MicroPython:Библиотеки/machine.TimerWiPy/TimerWiPy.ONE_SHOT|TimerWiPy.ONE_SHOT]] | ||
* [[MicroPython:Библиотеки/machine.TimerWiPy/TimerWiPy.PERIODIC|TimerWiPy.PERIODIC]] | * [[MicroPython:Библиотеки/machine.TimerWiPy/TimerWiPy.PERIODIC|TimerWiPy.PERIODIC]] | ||
=См.также= | =См.также= |
Текущая версия от 20:29, 7 мая 2022
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Класс TimerWiPy – управление аппаратными таймерами[1]
Аппаратные таймеры нужны для работы с периодами и событиями. Таймеры – это, возможно, самый универсальный и неоднородный тип оборудования в микроконтроллерах и SoC-системах. Таймеры, установленные в разные модели, могут очень сильно отличаться друг от друга. В MicroPython’овском классе Timer определена базовая операция периодического запуска функции обратного вызова через заданное время (или один раз после задержки). Но в то же время этот класс позволяет задавать более нестандартное поведение для отдельных плат (не портируемое на другие платы).
О важных ограничениях использования функций обратного вызова в классе Timer читайте тут.
Конструкторы
Методы
- TimerWiPy.init(mode, *, width=16)
- TimerWiPy.deinit()
- TimerWiPy.channel(channel, **, freq, period, polarity=TimerWiPy.POSITIVE, duty_cycle=0)