Подключение LCD1602 и энкодера к одним выводам Ардуино

RomanG95
Offline
Зарегистрирован: 18.10.2016

Всем доброго времени суток. Увидел такую схему.  На ней дисплей и энкодеры (на схеме кнопки) подключены к одним и тем же ногам Атмеги. Как можно реализовать одновременный вывод данных на дисплей и считывание состояния кнопок в среде ардуино? Заранее спасибо за ответы)

Клапауций 232
Offline
Зарегистрирован: 05.04.2016

а, откуда ты вычитал в схеме, что происходит "одновременный вывод данных на дисплей и считывание состояния кнопок"?

это физически не возможно.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Очень просто
17 и 19 ноги процессора в третье состояние.

Единственный нюанс когда будут нажаты две кнопки одновременно....
Короткое на данных для ЖКИ....
Наверное для исключения этого и стоят резисторы к47
 

RomanG95
Offline
Зарегистрирован: 18.10.2016

Клапауций 232 пишет:

а, откуда ты вычитал в схеме, что происходит "одновременный вывод данных на дисплей и считывание состояния кнопок"?

это физически не возможно.

Да по тому что это схема лабораторного БП, и энкодерами устанавливается напряжение и предел по току и во время установки соответственно изменяются значения на дисплее.

А третье состояние это как?

Я понимаю что в цикле нужно сначала установить ноги на вход и посмотреть чего там происходит, а потом установить их на выход и уже работать с дисплеем. Но ведь это не позволит сделать библиотека LiquidCrystal.

Вот и прошу помощи, может есть у кого нибудь идея как это реализовать

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

RomanG95 пишет:

Но ведь это не позволит сделать библиотека LiquidCrystal.

Вот и прошу помощи, может есть у кого нибудь идея как это реализовать

Собственно, в любом правильно поставленном вопросе содержится половина ответа: если что-то не позволяет сделать конкретная библиотека, нужно от нее отказываться.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

RomanG95 пишет:

Я понимаю что в цикле нужно сначала установить ноги на вход и посмотреть чего там происходит, а потом установить их на выход и уже работать с дисплеем. Но ведь это не позволит сделать библиотека LiquidCrystal.

Позволит или не позволит -нужно проверять с конкретной библой. Вот тут я проверял для одного конкретного пина в аналогичной ситуации, оказалось можно. А вообще это извращение, и не стоит заниматься такими вещами.

RomanG95
Offline
Зарегистрирован: 18.10.2016

а как от нее отказаться и в то же время не нагородить ничего лишнего?) есть какие нибудь методы?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Если это вопрос насчет отказа от библиотек, то метод единственный - чтение дэйташита. (в принципе, есть еще вариант - попытаться найти библиотеку с требуемыми свойствами, но этот вариант не очень надежный)