Символьные LCD типа
LM016L с контроллером
HD44780 стали фактически стандартом
де-факто, как пишут в этих наших интернетах...
Материалов, как прицеплять их к
PIC или
Atmel в интернете полно, но есть один
нюанс: обычно
код инициализации LCD примерно следующий:
Код этот повторяется от сайта к сайту, но везде упоминают, что он работает
вживую, но не работает на моделях
Proteus (это правда, я проверял).
Этот LCD я надумал прицепить к
проекту Gigatron и решил предварительно погонять
отдельный проект с
LM016L, чтобы посмотреть, как и на что влияют разные задержки.
Ну и использовал я несколько иной код инициализации LCD от
автора Nibbler.
Автор подробно расписал, что к чему, и его исходник в моём архиве есть.
Этот код реально работает и в железе, и на моделях
Proteus - это я тоже
проверял, поскольку вживую у меня этих индикаторов два - купил как-то
по случаю по 150 рублей - показалось недорого...
Код такой:
(CMD=0) 3h,3h,3h,2h, 2Ch, 0Fh, 01hПрограмма написана, что называется "в лоб", без циклов и ухищрений, поскольку
примерно так и планирую я запрограммировать
Gigatron с его "хитрозадумчивой"
системой команд и при отсутствии удобного ассемблера...
Схема для тестирования очень близка к
вот этой моей железке, и, в ней нет
только ввода программы через LPT.
В архиве - два проекта: первый для подбора точных интервалов времени при
заданной частоте, второй - собственно схема демонстрации работы LCD.
Также в архиве программы и справочные материалы по
LM016L и идентичным.
Надеюсь, материал будет полезным, если у кого заглючит проект с таким LCD.
Сразу можно будет выяснить "кто виноват": модель LCD или что-то другое...