Джойстик и прерывания
- Войдите на сайт для отправки комментариев
Пнд, 22/04/2019 - 10:20
Всем привет! Пришла мне в голову идея подключить джойстик к плате используя прерывания. Подскажите, хорошая ли это идея? И еще, для прерывания используются только 2 пина, а у джойстика 3 вывода. Я понимаю, что расстояние передать не получится. Как сгруппировать контакты?
Всем привет! Пришла мне в голову идея подключить джойстик к плате используя прерывания. Подскажите, хорошая ли это идея? И еще, для прерывания используются только 2 пина, а у джойстика 3 вывода. Я понимаю, что расстояние передать не получится. Как сгруппировать контакты?
У джойстика один выход и это кнопка. Здесь проблем с внешним прерыванием нету.
А как понять прерывания по аналоговым выходам джойстика?
А как понять прерывания по аналоговым выходам джойстика?
Может он имеет в виду дискретный джойстик или цифровой геймпад, кто ж его знает?
Вообще, вопрос довольно типичный: мне надо "прикрутить" ХЗ какой джойстик, к ХЗ какой плате, используя ХЗ какие прерывания. Как это сделать?
Если отвечать по существу и добросовестно, то ответ может быть только один - ХЗ!
У джойстика один выход и это кнопка. Здесь проблем с внешним прерыванием нету.
А как понять прерывания по аналоговым выходам джойстика?
У джойстика 3 выхода: отклонение по оси х, по оси у и нажатие на кнопку. Идея в том, чтобы по шевелению ручки джойстика и/или нажатию что-нибудь срабатывало, но не через опрос в программе, а через прерывание. А на плате только 2 пина для прерываний.
Блин, Вы читаете, что Вам пишут? Вот я написал, что Вы нам говорите о "ХЗ какой плате". Вас это никак не напрягло? Может таки расколетесь, что ж там за плата такая секретная?
А на плате только 2 пина для прерываний.
Кто такое сказал? PCINT никуда не делись.
Так, Дима, мы ж не знаем чё там за плата, ТС-то шифруется как Штирлиц.
- нажимаем кнопку на джоистике, подключенную как внешнее прерывание, и ... не отпуская её (или вывесив флаг), шерудим джойстиком. Повторным нажатием кнопки выходим из обработки прерывания. Способ простой с програмной точки зрения, но требует ловкости рук. И кнопка будет занята.
- не используй в скетче delay, 16/2 диспоей и ещё кой чего помелочи ... так и прерывания могут не понадобиться. Кнопку может даже нужно в прерывания (иногда). А потенциометры зачем?
- P.S. Хотя можно попробовать. Нужно только дополнительно два компоратора (один сдвоеный), два переменных резистора и парочку любых диодов.Компараторы настроить переменными резисторами на "0". Выходы компораторов через диоды соединить к одному пину прерываний. Кнопку - к другому. Аналоговые сигналы с джойстика подключить и к аналоговым пинам. Возможно для устойяивости системы понадобится по два компаратора на ось.
Тогда, при касании джойстика, .компоратор выходит из равновесия, подаёт сигнал на пин прерывания (прикидывается кнопкой), а в обработчике прерываний от этого пина считывать соответствующие аналоговые порты. Выход из прерывания может по millis подобрать по вкусу.
Второй пин прерывания кнопкой джойстика обработать по классической схеме.