Хорошо)) Какую ардуинку мне нужно я знаю(ту которая может вести себя как hid устройство). Вопрос как мне реализовать кнопки для этой ардуинки. При нажатие они вели себя как клавиши клавиатуры До 30 секунды я нажимаю на кнопки ардуинки После 30 нажимаю на кнопки клавиатуры Всё работает хорошо, но одна из кнопок иногда при одинарном нажатие печатает несколько букв
Комментарии: 33
Anonim
Переделывай с нуля заново.
Misha
Как мне это же реализовать для +-7 кнопок для одной С теми же кнопками? Или как-то иначе?
Anonim
ты видишь где у тебя проблема в коде - не можешь вылечить, бьешься как рыба об лед - начни писать программу с начала, с чистого листа.
Misha
Ну я уже дважды заново начинал У меня даже программы для разных этапов есть Например когда подключена одна кнопка и не используется функция определения какая именно кнопка, то всё работает без ошибок
Anonim
значит не работает то, что ты называешь определением кнопок
Misha
И проблема в том, что логика вроде везде верная, потому что иначе бы на каждом нажатие печатало неправильно, а у меня по-разному. То на 5 нажатие, то на 10. И только у одной из двух кнопок
Anonim
Поменяй местами кнопки физически
Misha
Пробовал у меня 4 и все 4 именно с этим пином
Anonim
Повторы там же - значит проблема в коде.
Misha
Но можно и другой пин, но суть в том, что Первая кнопка
Anonim
Местами блоки кода менял?
Misha
Да, и вот первая которую определяю и не работает нормально
Anonim
Чаше всего ошибки не в логике, а в опечатках. Проверь на опечатки и на присваивания в условиях if(a=1) присваивание, всегда истина if(a==1) проверка на истину Короче, внимательно просмотри весь код.
Misha
Ничего не нашёл(
Anonim
Значит проблема в самой логике
Misha
Хз Выяснил, что обе кнопки делаю такие ошибки, но одна из них гораздо реже
Anonim
зачем тебе две кнопки? контрол шифт делать что ли?
Misha
И у меня вопрос по поводу функции millis() Она возвращает время работы. И я это время сохраняю. Значение millis может стать слишком большим и переполнить переменную? Она тогда начнёт считать с 0, верно? По сути мне их обнулять не нужно и они сами будут обнуляться и не вылезет никакой ошибки? В смысле? Я же говорил, что геймпад делаю. Ты имеешь ввиду, что сочетания клавишь одновременно зачем нажимать
Anonim
millis обнуляется сам.
Misha
Спасибо, отлично)
Anonim
Да
Misha
Ну например кс шифт зажимаешь при ходьбе Тут мб джостик спасёт Но в играх иногда нужно зажимать несколько кнопок
Anonim
у тебя каждый обход клавишь это вычисление уровня нажатия и они все идут по очереди. все равно что ты будешь одновременно быстро нажимать зажатые кнопки в такт опроса
Misha
Хорошо
Anonim
сколько кнопок столько и таймеров надо 6 одновременно - делаешь 6 таймеров
Borisgeo
А если кнопки физических местами поменять, ошибка сохраняется?
Misha
да Такие типы (long double) не помещаются в print?
Vasil
Ну по идее функция их преобразует в чары.
Misha
ошибку выдал
Vasil
Тогда конверти во что-то из
Bombardier
Не подскажите? Подключаю реле с ик-датчиком и лампой без транзистора(датчик просто от батарейки, лампа от 220). При подключении сразу включается лампа, игнорируя сигнал с датчика- где может быть ошибка(малая мощность батареи?)?
Exen
Напряжение какое у батарейки? Просто батарейка без датчиков в состоянии переключить реле? Какое реле? Может ты на NC контакты подключаешь?
Bombardier
9v бистабильное реле