Подключение LCD на HD44780 через сдвиговые регистры

Вопросы от новичков
Ответить
krom23
Лейтенант
Сообщения: 444
Зарегистрирован: 06.09.2015{, 15:18}
Репутация: 12
Откуда: Калуга
Имя: Андрей

Подключение LCD на HD44780 через сдвиговые регистры

#1

Сообщение krom23 » 07.03.2019{, 13:36}

Здравствуйте дорогие Товарищи!
Со своим пламенным пролетарским приветом спешу поделиться с вами интересной на мой взгляд информацией поднятой мной из мутных глубин интернета. Речь пойдёт о 4х битном подключении ЖК-монитора на HD44780 к Arduino через сдвиговые регистры с защёлкой и без таковой (74HC595, HEF4094 и 74HC164) по двух и трёх проводной схемам. Увы, мы часто сталкивались с проблемой нехватки выводов при прямом подключении ЖК-монитора, или с зависаниями вызванными недостаточно быстрой работой I2C интерфейса, но данная схемотехника лишена всех этих недостатков.
Достоинства:
1. Быстродействие (Частота обработки составляет 4 мГц против 100 кГц I2C).
2. Малое количество используемых выводов для подключения.
3. Отсутствие жёсткой привязки к интерфейсам SPI, I2C и ШИМу (Подключаемся к любым свободным выводам).
4. Простая схема и дешевизна.
Однопроводную схему подключения я не рассматриваю по причине применённой RC-фильтрации сигнала, что при сильном уровне индустриальных помех может привести к сбоям, но желающие могут поэкспериментировать сами на эту тему, т.к все примеры приложены к библиотеке, схемы есть на сайте разработчика. А вот об этих схемах поговорим чуть подробнее:
СпойлерПоказать
Изображение
СпойлерПоказать
Изображение
Для работы со сдвиговыми регистрами необходима библиотека NewliquidСrystal, это сборка-конструктор за авторством Francisco Malpartida модифицирующую стандартную библиотеку liquidСrystal в сторону оптимизации и добавления общего интерфейса для всех компонентов там использующихся. Библиотека не токсична в чём я сам убедился установив её в FLprog, все проекты запускаются без проблем. Для того кто всё таки сомневается в целесообразности замены, достаточно не переименовывать NewliquidСrystal в liquidСrystal, а закинуть эту папку как есть в директорию с библиотеками, но при этом вы лишитесь некоторых преференций в быстродействии и занимаемой памяти (примерно на 3%), что само по себе не критично. О всех возможностях библиотеки можно прочитать на сайте разработчика, там же можно скачать свежую версию, так же в папке самой библиотеки в папке utility в формате html приведён полный справочник по ней.

Мной были собраны и испытаны две схемы, библиотеку, рабочие примеры и схемы прилагаю. Добавлю, что при сборке схемы на 74HC164(2-Wire) подойдёт не абы какой диод, а именно 1N4148 или близкий по характеристикам (у меня с этим были проблемы). Регулировка контрастности я думаю от лукавого, по этому в место подстроечника pin3 LCD, через резистор 1 кОм подтягиваем к земле. Если Вы заинтересуетесь и напишите ПБ, то я в свою очередь их немедленно протестирую (макеты ждут своего звёздного часа), нарисую плату или шилд, закажу и после тестирования выложу сюда.
Вложения
2-3 Wire LCD.7z
(1.43 МБ) 62 скачивания

valand
Рядовой
Сообщения: 63
Зарегистрирован: 15.07.2018{, 15:12}
Репутация: 13
Имя: Андрей

Подключение LCD на HD44780 через сдвиговые регистры

#2

Сообщение valand » 07.03.2019{, 22:09}

viewtopic.php?f=112&t=4801&p=62562#p62562
блок рабочий но не корректный. уже есть исправленный и доработанный, активно пользуюсь. чуть позже добавлю

krom23
Лейтенант
Сообщения: 444
Зарегистрирован: 06.09.2015{, 15:18}
Репутация: 12
Откуда: Калуга
Имя: Андрей

Подключение LCD на HD44780 через сдвиговые регистры

#3

Сообщение krom23 » 07.03.2019{, 23:20}

Спасибо, после выходных попробую. Сам неделю убил ища рабочую библиотеку, рабочую схему и пример, ведь тема была актуальна в 12м году и то в узких кругах. :D

valand
Рядовой
Сообщения: 63
Зарегистрирован: 15.07.2018{, 15:12}
Репутация: 13
Имя: Андрей

Подключение LCD на HD44780 через сдвиговые регистры

#4

Сообщение valand » 08.03.2019{, 00:53}

Что в узких так это точно) добавил новые блоки для 164 по ссылке выше.
------------------
ну а раз 595 тоже есть, то вот, чтоб не скучно было, для трех проводов
lcd_1602_3wire_74hc595_test_(CODE).ubi
(41.15 КБ) 58 скачиваний

Ответить

Вернуться в «Начинающим»