Популярные у радиолюбителей буквенно-цифровые модули ЖКИ в большинстве своём собраны на основе контроллера HD44780 фирмы Hitachi, который можно считать промышленным стандартом. Аналоги этого контроллера и модули на их основе производят многие фирмы. Предлагается прибор для оперативной проверки работоспособности таких модулей и содержимого их знакогенераторов.
На рис. 1 представлен самый распространённый в нашей стране, но не единственный, вариант таблицы кодов знакогенератора модуля ЖКИ, содержащей не только латинские, но и русские буквы. Получив каждый из этих кодов (двузначное шестнадцатеричное число), модуль выводит на свой экран соответствующий символ. Например, код 0х4Е (десятичное значение 78) — латинская буква N, а код 0хВ0 (десятичное значение 176) — русская буква Ю.
Символы разделены на две группы. Первая (коды с 0x20 по 0x7F) содержит цифры, буквы латинского алфавита и спецсимволы. Эта группа всегда одинакова, и коды находящихся в ней символов соответствуют известной кодовой таблице ASCII. Во второй группе (коды с 0хА0 по 0xFF) в рассматриваемом случае находятся буквы русского алфавита и различные значки. Однако в модификациях даже однотипных модулей ЖКИ, выпускаемых для разных стран, здесь вместо русских букв могут находиться буквы других национальных алфавитов и вообще любые символы. Коды с 0x00 по 0x07 отданы программистам для создания собственных символов, изображения которых можно загружать в память модуля специальными командами.
Если в руки радиолюбителю попал модуль ЖКИ без «опознавательных знаков” или такой, на который невозможно найти справочные данные (например, бывший в употреблении или даже купленный в интернет-магазине), неплохо иметь прибор для быстрой проверки его
работоспособности и определения содержимого знакогенератора.
Такой прибор, схема которого представлена на рис. 2, построен на микроконтроллере DD1 (PIC16F84A-04/P, описание которого можно найти по адресу http://datasheet.su/datasheet/Microchip/PIC16F84A-04/P). Он позволяет проверять модули символьных ЖКИ со встроенным контроллером HD44780 и следующими комбинациями числа знакомест в строке (первый сомножитель) и числа строк (второй множитель) на экране: 8×1, 8×2, 16×1, 16×2, 16×4, 20×1, 20×2, 20×4, 32×2, 40×2.
Резистор R1 поддерживает высокий логический уровень на входе MCLR микроконтроллера. Это предотвращает влияние на этот высокоомный вход наводок, способных вызвать нежелательные перезапуски микроконтроллера. Резистор R2 и конденсатор С2 — частотозадающие элементы встроенного в микроконтроллер тактового RC-генератора. Сопротивление резистора R2 может лежать 8 пределах 5…100 кОм, а ёмкость конденсатора С2 должна быть не менее 20 пф. При их номиналах, указанных на схеме, получена тактовая частота около 4 МГц. Её стабильность, конечно, хуже, чем у кварцевого генератора, но в рассматриваемом случае она и не требуется. От этой частоты зависит только скорость автоматического повторения «нажатий» на кнопку SB1 при её удержании нажатой. Резистором R3 регулируют контрастность символов на экране проверяемого модуля ЖКИ HG1. Резисторы R1 и R3 могут иметь сопротивление 1…10 кОм.
Ввиду простоты схемы печатная плата для прибора не разрабатывалась, он собран на макетной. Кнопка SB1 — КМ1-1В или любая другая. Резисторы R1 и R2 — МЛТ-0,125, R3 — СПЗ-4, конденсаторы — любые керамические.
Микроконтроллер PIC16F84A-04/P можно заменить на PIC16F84A-20/P или на PIC16F84 с такими же индексами после дефиса. Можно применить аналогичные микроконтроллеры с индексом /SO (в корпусе для поверхностного монтажа), но тогда и другие детали прибора желательно заменить на предназначенные для поверхностного монтажа.
Источник питания прибора должен давать стабилизированное напряжение 5 В при токе нагрузки не менее 100 мА.
При подаче на прибор с подключённым проверяемым модулем ЖКИ напряжения питания должны стать видимыми все элементы изображения во всех знакоместах экрана, как показано на рис. 3.
Этим проверяют их целостность и общую работоспособность модуля.
Учтите, что у большинства модулей ЖКИ плюс напряжения питания (Vdd,) следует подавать на вывод 1, а минус (Vss,) — на вывод 2. Однако бывает и наоборот. Например, у модуля WH1602D-TML-CT. Если подать питание в неправильной полярности, модуль работать не станет, а через некоторое время будет безвозвратно испорчен. У автора был такой печальный опыт. Но кратковременную (несколько секунд) переполюсовку модуль всё-таки выдерживает. Поэтому, если на подачу питающего напряжения модуль не реагирует, прибор необходимо незамедлительно отключить от источника питания и искать причину неработоспособности модуля.
Первое после включения питания нажатие на кнопку SB1 погасит прямоугольники на экране, а в его верхней строке будет выведена надпись «z 122». Это значит, что в знакогенераторе контроллера модуля имеется символ «z» с кодом 122 (здесь и далее значения кодов десятичные). При дальнейших нажатиях или при удержании кнопки нажатой на экран поочерёдно выводятся символы с кодами 123—255, затем цикл бесконечно повторяется, начиная с кода 122. Это даёт возможность просмотреть все символы, содержащиеся во второй части кодовой таблицы, и узнать их коды для использования в разрабатываемых программах.
На рис. 4 на экран модуля ЖКИ 20×4 фирмы OPTREX, знакогенератор которого не содержит русских букв, выведена надпись «β 226”.
А на рис. 5 на экран русифицированного модуля ЖКИ 16×2 неизвестного типа выведена надпись «Щ 226».
Это подтверждает, что у модулей разных модификаций одному и тому же коду из второй части таблицы могут соответствовать разные символы.
Скачать архив к проекту.
Автор: Г. НЮХТИЛИН, г. Ковров Владимирской обл.