|
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
|
|
hardware опрос кнопки.04.04.2017, 12:40. Показов 4750. Ответов 17
Метки нет (Все метки)
Интересует есть ли железный опрос кнопки.
Как энкодер самим процом обрабатывается. Хочу подключить 2 кнопки и что бы они 1 ячейку сами прибавляли и вычитали. Есть что нибудь подобное? проц stm32f1 или f4
0
|
|
| 04.04.2017, 12:40 | |
|
Ответы с готовыми решениями:
17
Простой опрос кнопки, но не работает Опрос кнопки и запись в EEPROM (Си, PIC16F887)
|
|
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,113
|
|
| 04.04.2017, 12:51 | |
|
Сделайте эмулятор "энкодера" на 2х кнопках, будет вам "железный" счетчик.
0
|
|
|
1 / 1 / 0
Регистрация: 05.10.2017
Сообщений: 2,048
|
|
| 04.04.2017, 14:11 | |
|
Можно зацепить на вход тактирования таймера. Только как будете с антидребезгом бороться? Аппаратная обработка есть, вот только период там совсем мал. К чему такая задача? Если на кнопку жмет человек, то там паузы в 20-30мс вполне допустимы и незаметны и простой опрос вполне успешно обрабатывает нажатия.
0
|
|
|
0 / 0 / 0
Регистрация: 06.02.2013
Сообщений: 333
|
|
| 04.04.2017, 18:31 | |
|
Чета ТЗ кривое. Кнопки это кнопки, энкодер это энкодер. Хотя формально энкодер и есть две кнопки, но вкл, выкл у него в определенной последовательности.
Делаем выбор - энкодер или кнопки?
0
|
|
|
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
|
||
| 04.04.2017, 21:11 | ||
(энкодер я привел в качестве примера - процессор его сам обрабатывает, я хочу что бы так же обрабатывались 2 кнопки. Без моего участия)
0
|
||
|
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
|
||
| 04.04.2017, 21:13 | ||
А разве можно 2 входа тактирования сделать для таймера ? чтобы 1 вычитал, а 2 прибавлял ?
0
|
||
|
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,113
|
|
| 04.04.2017, 21:48 | |
|
В режиме энкодера - да.
0
|
|
|
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
|
|
| 04.04.2017, 23:07 | |
|
ТС, опишите саму проблему а не ваше представление реализации...
0
|
|
|
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
|
|
| 05.04.2017, 12:16 | |
|
Проблемы нет. Просто хочется что бы 2 кнопки обрабатывались сами.
0
|
|
|
0 / 0 / 0
Регистрация: 20.07.2012
Сообщений: 620
|
|
| 05.04.2017, 15:19 | |
|
Что значит "сами"?
С кнопками есть проблема, именуемая дребезг контактов. С ним так или иначе надо бороться или програмно внутри контроллера или "железно" на плате. Из-за дребезга нельзя просто-напросто завести ваши кнопки на счетчики. То есть, увы, но ответ отрицательный. Нужно реализовывать обработку в каком-либо ее виде.
0
|
|
|
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
|
||
| 05.04.2017, 21:23 | ||
У таймера есть антидребезговый фильтр. Он и задействован в обработке энкодера.
0
|
||
|
0 / 0 / 0
Регистрация: 28.07.2016
Сообщений: 173
|
||
| 05.04.2017, 21:57 | ||
У таймера есть антидребезговый фильтр. Он и задействован в обработке энкодера. этого фильтра не хватает на борьбу с дребезгом кнопок. проверено, он скорее с единичными выбросами борется. Об этом если память не изменяет написано в РМ. ИМХО, Не вижу проблемы добавить обработку нажатия кнопки размером в пару строк кода, даже с использованием того же таймера. Заодно можно и длительные нажатия от коротких отличать
0
|
||
|
Oxford
|
|
| 06.04.2017, 07:46 | |
|
Под ОС это решается выделением задачи. Одной процедуркой, при этом программная фильтрация настраивается как душе угодно.
|
|
|
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
|
||
| 06.04.2017, 11:10 | ||
ИМХО, Не вижу проблемы добавить обработку нажатия кнопки размером в пару строк кода, даже с использованием того же таймера. Заодно можно и длительные нажатия от коротких отличать https://hubstub.ru/stm32/68-kak-podklyu ... stm32.html (не реклама) в статье описано про входной антидребезговый настраиваемый фильтр "Для настройки входного фильтра предназначен регистр ICxF, кроме количества выборок, в течение которых микроконтроллер не будет реагировать на входные сигналы, также можно настроить частоту выборок. По сути мы настраиваем время задержки с момента прихода фронта до "подтверждающей" выборки." По теме - понятно что такой метод работы с кнопками невозможен. Всем спасибо.
0
|
||
|
1 / 1 / 0
Регистрация: 05.10.2017
Сообщений: 2,048
|
|
| 06.04.2017, 11:27 | |
|
Ага, только посчитайте длительность такого антидребезга на максимальной длительности. Возможно я где-то ошибся в расчетах, одна у меня вышла максимальная длительность 28мкс . Толку от такого антидребезга нет.
0
|
|
|
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
|
|
| 06.04.2017, 14:46 | |
|
Тогда как же работает энкодер с таким маленьким антидребезгом ?
0
|
|
|
1 / 1 / 0
Регистрация: 05.10.2017
Сообщений: 2,048
|
|
| 06.04.2017, 15:13 | |
|
Обычный механический херово работает. Следует понимать, что эти входные фильтры не только для обработки энкодера, но и для других режимов таймера, где они возможно необходимы. У себя энкодер сделал на обычном опросе.
0
|
|
|
0 / 0 / 0
Регистрация: 20.07.2012
Сообщений: 620
|
|
| 06.04.2017, 15:39 | |
|
Давайте вернемся немного назад.
Энкодер это немного не кнопки. Квадратурная модуляция по своей природе более устойчива к дребезгу, потому что пока одна ножка дребезжит, вторая стабильна. А подобное поведение трактуется алгоритмом квадратурной модуляции как вперёд-назад-вперёд-назад Следовательно дребезг будет сдвигать модель плюс-минус на один импульс. То есть при квадратурной модуляции дребезг в принципе допустим. А с кнопками другая история. Они независимы. Дребезг на одной из них вызовет сотни переключений, в то время как дребезг при квадратурной модуляции вызывает колебания в один импульс.
0
|
|
| 06.04.2017, 15:39 | |
|
Помогаю со студенческими работами здесь
18
Опрос клавиатуры 3х4 и вывод нажатой кнопки AT90S8515 Servise и Hardware кнопки Опрос нажатия кнопки в стороннем приложении Цикл for блокирует опрос кнопки. Как выйти посреди цикла при нажатии на кнопку? Hardware upgrade Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|