После долгого перерыва решил сделать небольшое устройство. Раньше делал только простенький вывод на 7ми сегментные индикаторы. Сейчас использую символьный Hd44780 2х16. Впал в ступор. Не знаю как построить программу. Как правильно обновлять дисплей? Попытался формировать строки в озу и по флагу обновления информации выводить их сразу две. Но в некоторых случаях приходится часто обновлять весь дисплей, когда надо вывести всего 5 символов. По каждому событию, нажатие кнопки, результат с ацп и т. д. поднимаю флаг обновления экрана, а в main, раз 1ms, вызывается функция вывода на экран, где смотрится надо ли выводить инфу, и готовится строка на вывод в зависимости от режима программы.
Обновлять информацию кусками, программа сильно разрастается.
Намекните, как надо строить программу. Может не надо разносить функции, как у меня сейчас, а выводить сразу на экран по факту события. Но при этом в программе пропадает порядок.
|