Подключение 5-ти вольтового дисплея 16х2 к 3.3-х вольтовому контроллеру.
Дата: 25 Июня 2013. Автор: Алексей
Продолжая разбираться с GSM модулем я наткнулся на проблему волка, козла и капусты. GSM модуль работает от 3.3 вольт, а ЖК дисплей 5 вольт. Управляющий контроллер может быть либо ATmega32, либо STM32F100. Но вот делема, первый 5-ти вольтовый, второй 3.3. С какой стороны не крути, везде требуется согласование уровней. Сначала я работал с 32 мегой и ломал голову над UART, но после из-за маленькой памяти перешел на STM32. Вот тут и встал вопрос о связи ЖК с Армом. Чаще всего ЖК дисплеи выпускают с 5 вольтовым питанием, да и у меня их не мало, вот и пришла в голову такая идея. Смотрим схему.
Схема состоит из шести преобразователей с 3.3 на 5 вольт. Каждый преобразователь состоит из двух биполярных транзисторов и пяти резисторов. Когда на базу NPN- транзистора подается логическая 1, он открывается. Для инвертирования уровня в лог 1 для 5 вольт каскадом стоит PNP-транзистор. При его открытии на выход подается логическая 1 но уже 5 вольт. Для стабильного закрытия транзисторов используются подтягивающие резисторы между базой и эмиттером на 4,7К. При тестовом испытании было обнаружено болтание уровней на входных ножках ЖК. Для этих целей методом научного тыка было подобрано подтягивающее сопротивление между GND и входом ЖК номиналом 360R. Данное сопротивление подходит для моего ЖК, но я думаю что для других тоже подойдет. Переменный резистор R31 регулирует контрастность. Вход R/W я прижал к GND намертво, так как читать из ЖК не собираюсь. Если нужно читать из ЖК, то это уже будет совсем другая схема. Ну оставшиеся ножки питания и подсветки подключаем к 5 вольтовому питанию. Да, есть некоторые ЖК у которых отсутствует токоограничивающий резистор на подсветке. Не забудьте проверить!!!
А вот что у меня получилось.
Сборку проводил на SMD компонентах. Транзисторы можно использовать даже полевые, но придется немного изменить схему. Но суть работы такая же. Я использовал биполярники так как у меня их большое количество. Прилагаю схему в формате P-CAD 2006. Саму плату выкладывать не буду, так как для каждого дисплея своя. Если возникнет желания трассировать в P-CAD 2006, то скачайте библиотеку деталей в разделе полезные программы. Данная библиотека содержит все необходимые корпуса. Ну конечно Для ЖК корпус придется рисовать свой. Если не охота рисовать корпус, то я использовал ЖК QC1602A. Правда у него нет кириллицы, но мне она и не нужна.
Файл для P-CAD 2006 shems.rar
Олег 25.07.14
Зачем же так мучатся, stm32 толерантны у
5 вольт. Напрямую подключить ноги к
дисплею(только надо подтяжки на ноги
stm32 програмно установить), а сам
дисплей к 5 вольтам. И все работает.
Проверено, много раз.
Алексей 25.07.14
Я знаю. Но задача стояла именно сделать
преобразователь. И в конце концов stm32
лишь пример.
иван 28.03.16 19:43
Здравствуйте, скажи пожалуйста у меня проблема при подключение STM32F1Discovery и LCD QC1602A. Суть проблемы заключается в том что при подключение к компьютеру на дисплее появляется первая строка вся в черных квадратах,я убираю контрастность, и как бы ни менял исходники и библиотеки, ни чего не появляется на нем. Я только начинаю изучение ARM микроконтроллеров. Что может быть?
Сергей 01.12.16 21:51
А если использовать преобразователь i2C и уже его согласовывать?
Алексей 01.12.16 22:11
Почему? Поставить до преобразователя.