OneButton с контактами A6 и A7

Я заметил, что библиотека OneButton не работает с пинами A6 и A7 (с A1 и A2 работает хорошо) на моем Arduino Nano. Это потому, что A6 и A7 только аналоговые? Есть ли возможность заставить их работать правильно?

пример эскиза здесь https://github.com/mathertel/OneButton/blob/master/examples/TwoButtons/TwoButtons.ino

, 👍1

Обсуждение

Это потому, что A6 и A7 аналоговые? ... почему вы спрашиваете об этом? A1 и A2 также аналоговые выводы. .... пожалуйста, выложите скетч, который не работает, @jsotola

A1 и A2 также могут быть цифровыми, а вот A6 и A7, насколько я понимаю, - нет (см. прилагаемую схему распиновки), @Филипп Цветков

это не то, что вы сказали в своем вопросе... когда дело касается технических вопросов, вы должны быть точны... измените свое утверждение на Это потому, что A6 и A7 «только аналоговые»?, @jsotola


1 ответ


Лучший ответ:

3

Контакты A6 и A7 являются только аналоговыми контактами. Они не имеют никакой цифровой функциональности.

Вы можете видеть, что на контактах 19 и 22 есть только ADCn — нет Pxn для цифровой работы (не обращайте внимания на цветовую схему этих контактов — это ошибка в техническом описании).

,

Вот что я подумал... Так возможно ли сделать OneButton с аналоговыми выводами?, @Филипп Цветков

Это верно. Вам придется адаптировать его для использования analogRead() на этих пинах и сравнивать входящие значения с пороговыми значениями для HIGH и LOW. Можно было бы сделать, но неуклюже., @Majenko

В библиотеке, в функции tick, есть вызов digitalRead. Вы можете изменить эту строку, чтобы проверить, используется ли пин a6 или a7, а затем использовать код с analogRead. Возможно, автор библиотеки захочет это добавить. Вы можете создать issue и попросить запрос на функцию., @Jot