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

а, откуда ты вычитал в схеме, что происходит "одновременный вывод данных на дисплей и считывание состояния кнопок"?
это физически не возможно.
Очень просто
17 и 19 ноги процессора в третье состояние.
Единственный нюанс когда будут нажаты две кнопки одновременно....
Короткое на данных для ЖКИ....
Наверное для исключения этого и стоят резисторы к47
а, откуда ты вычитал в схеме, что происходит "одновременный вывод данных на дисплей и считывание состояния кнопок"?
это физически не возможно.
Да по тому что это схема лабораторного БП, и энкодерами устанавливается напряжение и предел по току и во время установки соответственно изменяются значения на дисплее.
А третье состояние это как?
Я понимаю что в цикле нужно сначала установить ноги на вход и посмотреть чего там происходит, а потом установить их на выход и уже работать с дисплеем. Но ведь это не позволит сделать библиотека LiquidCrystal.
Вот и прошу помощи, может есть у кого нибудь идея как это реализовать
Но ведь это не позволит сделать библиотека LiquidCrystal.
Вот и прошу помощи, может есть у кого нибудь идея как это реализовать
Собственно, в любом правильно поставленном вопросе содержится половина ответа: если что-то не позволяет сделать конкретная библиотека, нужно от нее отказываться.
Я понимаю что в цикле нужно сначала установить ноги на вход и посмотреть чего там происходит, а потом установить их на выход и уже работать с дисплеем. Но ведь это не позволит сделать библиотека LiquidCrystal.
Позволит или не позволит -нужно проверять с конкретной библой. Вот тут я проверял для одного конкретного пина в аналогичной ситуации, оказалось можно. А вообще это извращение, и не стоит заниматься такими вещами.
а как от нее отказаться и в то же время не нагородить ничего лишнего?) есть какие нибудь методы?
Если это вопрос насчет отказа от библиотек, то метод единственный - чтение дэйташита. (в принципе, есть еще вариант - попытаться найти библиотеку с требуемыми свойствами, но этот вариант не очень надежный)