Схема:
Нажмите для просмотра прикрепленного файла
Взял здесь библиотеку и решил переделать под себя. Язык - ассемблер. МК - atmega16.
Поизучал datasheet на HD44780U. Вроде понял как в общем все должно быть.
Пока копаюсь в каждой строчке библиотеки и адаптирую под свое подключение.
Возникли вопросы:
1)Автор выкладывал библиотеку для LCD на 8 символов, 2 строки. У меня же 16х2. Подойдет ли мне его библиотека?
2)Не уверен какой у меня дисплей. Скорее всего WH1602C. В даташите указывают что контроллер у него ST 7066 или эквивалентный. В другом - KS 0066 или эквиваленьный. Это все полные аналоги HD44780?
3)И самое главное - совсем запутался с очередностью "ногодрыганья".
Для записи:
E в 1. Выдача команды/данных в порт. Задержка. E в 0.
Насколько я понимаю - контроллер HD44780 забирает данные по переходу сигнала E из 1 в 0.
Чтение:
А тут как-то непонятно - E в 1, пауза, считывание данных и лишь потом сброс E в 0. То есть HD44780 выдает свои данные (например флаг BF) сразу после поднятия E в 1 и задержки, а не по перепаду E из 1 в 0.
Хотя автор статьи пишет что все операции записи/чтения происходят по заднему фронту сигнала E.
А как действительно?