Подключение российского ЖК индикатора





Здравствуйте, уважаемые читатели! Мигающий светодиод весьма наглядно демонстрирует окружающим нормальную работу микроконтроллера, но ведь не кодировать же мне выходные данные путём изменения длительности вспышки и паузы между вспышками! Да, таким же образом первый в мире искусственый спутник Земли, запущенный в СССР 4 октября 1957 года, передавал в эфир информацию о давлении воздуха и температуре на борту. С начала космической эры прошло больше 60 лет, наука и техника значительно продвинулись вперёд, ушли в историю огромные ламповые ЭВМ, требующие стабильности температуры окружающего воздуха в десятую долю градуса. Теперь, небольшая электронно-вычислительная машина целиком размещена на одном кристалле и упакована в пластиковый корпус миросхемы микроконтроллера К1986ВЕ92QI. Думаю, не стоит ретроградствовать, а вместо мигающего светодиода сделать вывод информации на цифро-буквенный знакосинтезирующий жидкокристаллический индикатор, как наболее простой в применении.

У меня в наличии оказался российский двухстрочный ЖКИ MT16S2D, изготовленный фирмой "МЭЛТ". Этот индикатор рассчитан на питание от пяти вольт, но я собираюсь только писать в него информацию, порты индикатора работают только на ввод и в порт микроконтроллера не будут поданы сигналы с пятивольтовыми уровнями. Кроме того, индикатор и микроконтроллер заводами изготовлены с требованием согласования входов и выходов под работу с уровнями классической ТТЛ-логики. Значит, индикатор по техусловиям должен нормально работать с управлением от микроконтроллера! Вот схема подключения ЖК индикатора к плате:

ЖК индикатор в четырёхбитном режиме требует всего шесть выводов управления, четыре вывода для полубайтового ввода данных DB4-DB7, сигнал управлеия режимом ввода команда/данные A0 и сигнал защёлкивания данных E. В секции инициализации для удобства программирования нужно прописать сигналы управления, а также имена и типы переменных, а также массив из 16х2 байт выводимых символов:

Поскольку, по четырёхбитной шине данных байт записывается в два приёма, нужна процедура записи байта:

Процедуры записи байта команды.данных различаются только разным уровнем сигнала управления, дальше идёт вызов процедуры записи байта:

Процедура вывода символов на ЖК индикатор в цикле сначала записывает в контроллер ЖКИ верхнюю строку, потом нижнюю:

Наконец, главная процедура и главный цикл программы:

Главная процедура включает в себя инициализацию переменных, портов микроконтроллера, а также инициализацию самого ЖК индикатора. Основной цикл программы выводит на ЖК индикатор две строки символов и ждёт 100 мс. Думаю, 10 раз в секунду обновлять показания ЖКИ вполне достаточно. Остаётся только подключить индикатор к плате и прошить микроконтроллер:

Как видите, русский ЖК индикатор управляется русской отладочной платой на русском микроконтроллере!

Архив проекта.


Благодарю за внимание, доброго здоровья!



Сайт работает на микрокомпьютере