MicroPython:Библиотеки/machine/Класс Timer: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) (Новая страница: «{{MicroPython/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} <syntaxhighlight lang="python" enclose="div"> =...») |
Myagkij (обсуждение | вклад) Нет описания правки |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 3: | Строка 3: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=Класс Timer – управление аппаратными таймерами<ref>[http://docs.micropython.org/en/latest/library/machine.Timer.html docs.micropython.org - class Timer – control hardware timers]</ref>= | |||
Аппаратные таймеры предназначены для работы с периодами и событиями. Таймеры – это, возможно, самые гибкие и разнообразные компоненты [[микроконтроллер]]ов и [[SoC]]-систем; они очень сильно варьируются от одной модели к другой. В классе Timer в [[MicroPython]] задана базовая операция выполнения функции обратного вызова с заданной периодичностью (или единожды после некоторой задержки), но на некоторых платах с его помощью можно задать и более нестандартное поведение (и тогда код невозможно будет портировать на другие платы). | |||
О важных ограничениях при использовании функций обратного вызова в классе Timer читайте [http://docs.micropython.org/en/latest/library/machine.html#machine-callbacks тут]. | |||
{{Спойлер|Примечание: Внутри обработчиков запросов на прерывание (прерываний) память выделять нельзя, и поэтому исключения, возбуждаемые обработчиком, дают мало полезной информации. О том, как обойти это ограничение, читайте [http://docs.micropython.org/en/latest/library/micropython.html#micropython.alloc_emergency_exception_buf тут].}} | |||
Если вы используете плату [[WiPy]], то вместо этого класса вам понадобится [http://docs.micropython.org/en/latest/library/machine.TimerWiPy.html#machine-timerwipy machine.TimerWiPy]. | |||
==Конструкторы== | |||
* [[MicroPython:Библиотеки/machine/Класс Timer/machine.Timer()|machine.Timer()]] | |||
==Методы== | |||
* [[MicroPython:Библиотеки/machine/Класс Timer/Timer.init()|Timer.init()]] | |||
* [[MicroPython:Библиотеки/machine/Класс Timer/Timer.deinit()|Timer.deinit()]] | |||
==Константы== | |||
* [[MicroPython:Библиотеки/machine/Класс Timer/Timer.ONE_SHOT|Timer.ONE_SHOT]] | |||
* [[MicroPython:Библиотеки/machine/Класс Timer/Timer.PERIODIC|Timer.PERIODIC]] | |||
=См.также= | =См.также= |
Текущая версия от 10:34, 20 сентября 2020
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Класс Timer – управление аппаратными таймерами[1]
Аппаратные таймеры предназначены для работы с периодами и событиями. Таймеры – это, возможно, самые гибкие и разнообразные компоненты микроконтроллеров и SoC-систем; они очень сильно варьируются от одной модели к другой. В классе Timer в MicroPython задана базовая операция выполнения функции обратного вызова с заданной периодичностью (или единожды после некоторой задержки), но на некоторых платах с его помощью можно задать и более нестандартное поведение (и тогда код невозможно будет портировать на другие платы).
О важных ограничениях при использовании функций обратного вызова в классе Timer читайте тут.
Примечание: Внутри обработчиков запросов на прерывание (прерываний) память выделять нельзя, и поэтому исключения, возбуждаемые обработчиком, дают мало полезной информации. О том, как обойти это ограничение, читайте тут. |
Если вы используете плату WiPy, то вместо этого класса вам понадобится machine.TimerWiPy.