Wbincludes:Inputs Press Events: различия между версиями
Строка 1: | Строка 1: | ||
=== Обработка нажатий === | === Обработка нажатий === | ||
[[Image: wb press events.png |300px|thumb|right| Диаграма генерации событий для типов нажатий ]] | [[Image: wb press events.png |300px|thumb|right| Диаграма генерации событий для типов нажатий ]] | ||
Модуль | Модуль может распознавать четыре типа нажатий: короткое, длинное, двойное и короткое, а за тем длинное. | ||
Алгоритм распознавания соответствуют стандарту IEC 62386-301, но с отличиями: | Алгоритм распознавания соответствуют стандарту IEC 62386-301, но с отличиями: | ||
Строка 15: | Строка 15: | ||
'''Двойное (Double)''' нажатие детектируется по нескольким признакам: | '''Двойное (Double)''' нажатие детектируется по нескольким признакам: | ||
* ширина первого импульса меньше Long Press Time | * ширина первого импульса меньше Long Press Time; | ||
* второй импульс начинается через время Second Press Waiting Time | * второй импульс начинается после первого, но через время, меньшее чем указано в Second Press Waiting Time; | ||
* ширина второго импульса меньше Long Press Time | * ширина второго импульса меньше Long Press Time. | ||
'''Длинное (Long)''' нажатие детектируется, если ширина импульса больше, чем Long Press Time. | '''Длинное (Long)''' нажатие детектируется, если ширина импульса больше, чем Long Press Time. | ||
'''Короткое, а затем длинное (Shortlong)''' нажатие детектируется: | '''Короткое, а затем длинное (Shortlong)''' нажатие детектируется: | ||
* ширина первого импульса меньше Long Press Time | * ширина первого импульса меньше Long Press Time; | ||
* второй импульс начинается через время Second Press Waiting Time | * второй импульс начинается после первого, но через время, меньшее чем указано в Second Press Waiting Time; | ||
* ширина второго импульса больше, чем Long Press Time | * ширина второго импульса больше, чем Long Press Time |
Версия 13:56, 4 июля 2022
Обработка нажатий
Модуль может распознавать четыре типа нажатий: короткое, длинное, двойное и короткое, а за тем длинное.
Алгоритм распознавания соответствуют стандарту IEC 62386-301, но с отличиями:
- добавлена обработка короткого нажатия.
- событие двойного нажатия генерируется через Second Press Waiting Time, но не по первому по второму фронту короткого импульса.
Доступны настройки:
- Long Press Time (ms) — время удержания входа в замкнутом состоянии для фиксации долгого нажатия.
- Second Press Waiting Time (ms) время между концом первого клика и началом второго клика для обнаружения двойных и коротких нажатий.
- Debounce — антидребезг учитывается по переднему и заднему фронту, сдвигая начало отсчёта Long Press Time и генерацию события Double Event.
Короткое (Short) нажатие детектируется, если ширина импульса меньше Long Press Time.
Двойное (Double) нажатие детектируется по нескольким признакам:
- ширина первого импульса меньше Long Press Time;
- второй импульс начинается после первого, но через время, меньшее чем указано в Second Press Waiting Time;
- ширина второго импульса меньше Long Press Time.
Длинное (Long) нажатие детектируется, если ширина импульса больше, чем Long Press Time.
Короткое, а затем длинное (Shortlong) нажатие детектируется:
- ширина первого импульса меньше Long Press Time;
- второй импульс начинается после первого, но через время, меньшее чем указано в Second Press Waiting Time;
- ширина второго импульса больше, чем Long Press Time