- Необходимые материалы
- Краткое знакомство с матричным ЖК-дисплеем 16 × 2
- АЦП в TIVA Launchpad
- Принципиальная схема и подключения
- Программирование TIVA TM4C Launchpad для ЖК-дисплея с помощью Energia IDE
- ЖК-дисплей 16x2 с TIVA Launchpad
В предыдущем уроке мы начали с изучения TIVA TM4C Launchpad и того, как управлять его цифровыми входами и выходами с помощью Energia IDE. Теперь, в этом уроке, мы узнаем о взаимодействии матричного ЖК-дисплея 16 × 2 с этой платой для отображения полезной информации и данных датчиков.
ЖК-дисплей 16x2 - это то, что большинство из нас столкнулось бы с этим либо через общественные PCO, либо использовали бы его в других проектах электроники. ЖК-дисплей 16x2 - это недорогой дисплейный модуль, который очень удобен для любых электронных приложений для отображения данных или другой отладочной информации. Итак, мы соединяем ЖК-дисплей 16x2 с TIVA C Series TM4C123G LaunchPad. Здесь мы покажем значения АЦП и уровни напряжения на ЖК-дисплее. Для изменения значений АЦП прилагается потенциометр. Узнайте больше о ЖК-дисплее 16x2 и его выводах здесь.
Необходимые материалы
- TIVA TM4C LaunchPad от Texas Instruments
- Матричный ЖК-дисплей 16 × 2
- Соединительные провода
Краткое знакомство с матричным ЖК-дисплеем 16 × 2
Как было сказано ранее, Energia IDE предоставляет прекрасную библиотеку, которая упрощает взаимодействие с интерфейсом, и, следовательно, не обязательно что-либо знать о модуле дисплея. Но, разве не интересно было бы показать, чем мы пользуемся !!
Название 16 × 2 подразумевает, что дисплей имеет 16 столбцов и 2 строки, которые вместе (16 × 2) образуют 32 поля. Одна коробка будет выглядеть примерно так на картинке ниже
Один блок имеет 40 пикселей (точек) с порядком матрицы из 5 строк и 8 столбцов, эти 40 пикселей вместе образуют один символ. Точно так же можно отобразить 32 символа во всех полях. Теперь давайте посмотрим на распиновку.
ЖК-дисплей имеет в общей сложности 16 контактов, как показано выше, их можно разделить на четыре группы, как показано ниже.
Выводы источника (1, 2 и 3): эти выводы служат источником питания и уровня контрастности для дисплея.
Управляющие контакты (4, 5 и 6): эти контакты устанавливают / управляют регистрами в интерфейсной ИС ЖК-дисплея (подробнее об этом можно узнать по ссылке ниже)
Контакты данных / команд (с 7 по 14): эти контакты предоставляют данные о том, какая информация должна отображаться на ЖК-дисплее.
Контакты светодиода (15 и 16): эти контакты используются для подсветки ЖК-дисплея, если это необходимо (необязательно).
Из всех этих 16 контактов только 10 контактов должны использоваться в обязательном порядке для правильной работы ЖК-дисплея, если вы хотите узнать больше об этих ЖК-дисплеях, перейдите к этой статье о ЖК-дисплее.
Также проверьте взаимодействие ЖК-дисплея 16x2 со многими другими микроконтроллерами.
- Сопряжение ЖК-дисплея 16x2 с микроконтроллером AVR Atmega16 в 4-битном режиме
- Взаимодействие ЖК-дисплея с микроконтроллером PIC с использованием MPLABX и XC8
- Сопряжение ЖК-дисплея 16x2 с STM32F103C8T6
- Сопряжение ЖК-дисплея с MSP430G2 LaunchPad
- Интерфейс ЖК-дисплея с микроконтроллером 8051
- Подключение ЖК-дисплея 16x2 к Arduino
- Интерфейс ЖК-дисплея 16x2 с Raspberry Pi с использованием Python
АЦП в TIVA Launchpad
Потенциометр обеспечивает аналоговый выход, поэтому его нельзя подключить к цифровым контактам Launchpad. Таким образом, аналоговые выводы или выводы АЦП микроконтроллера используются для подключения любого датчика, выход которого является аналоговым по своей природе. TIVA TM4C имеет 2 канала АЦП с 12-битным выходом, это означает, что аналоговые значения с датчика или потенциометра могут отображаться в диапазоне от 0 до 2 ^ 12 (4096), чтобы преобразовать их в цифровые значения. Чтобы узнать больше об аналого-цифровом преобразовании в микроконтроллере, перейдите по ссылке.
В TIVA Launchpad имеется 12 аналоговых входных контактов (A0-A11), как показано на рисунке ниже.
Принципиальная схема и подключения
Полная принципиальная схема для сопряжения матричного ЖК-дисплея 16 × 2 с TIVA Launchpad TM4C показана ниже.
Одним из основных ограничений при взаимодействии с этими ЖК-дисплеями является их рабочее напряжение. ЖК-дисплей имеет рабочее напряжение + 5В, тогда как TM4C работает только с 3,6В. К счастью для нас, вывод данных ЖК-интерфейса IC (HD44780U) имеет широкое рабочее напряжение от 2,7 В до 5,5 В. Таким образом, нам нужно беспокоиться только о Vdd (вывод 2) ЖК-дисплея, в то время как выводы данных могут работать даже с 3,6 В.
Плата TIVA по умолчанию не имеет вывода + 5V, поэтому для работы ЖК-дисплея следует использовать внешний источник питания. Либо используйте блок питания от платы Arduino, либо используйте стабилизатор напряжения 7805. Обязательно соедините заземление источника питания с землей платы TIVA.
Ниже приведена таблица, показывающая соединения между ЖК-дисплеем и TIVA Launchpad.
Имя вывода ЖК-дисплея | TIVA Launchpad |
Vss | Земля |
Vdd | + 5В питание |
Рупий | Вывод PC_6 TIVA |
R / W | Земля |
включить | Пин PB_7 TIVA |
D4 | Пин PA_2 TIVA |
D5 | Пин PA_3 TIVA |
D6 | Контакт PA_4 TIVA |
D7 | Пин PB_6 TIVA |
Чтобы отобразить значения потенциометра на ЖК-дисплее, подключите выход Pot к любому аналоговому выводу (PE2).
Программирование TIVA TM4C Launchpad для ЖК-дисплея с помощью Energia IDE
Прежде чем приступить к объяснению, запишите контакты, которые используются в этом проекте. Взгляните на принципиальную схему и распиновку TIVA, приведенную выше. Полный код с рабочим видео прилагается в конце этого руководства.
В Energia IDE по умолчанию входит библиотека для ЖК-дисплея 16x2 (LiquidCrystal). Если его нет, скачайте его по этой ссылке на github и вставьте в папку с библиотеками Energia IDE.
Затем запустите программу, включив библиотеку для ЖК-дисплея и определив для нее контакты.
#включают
Следующий шаг будет отметить контакты, к которым LCD подключен к, как мы уже назвали его помощью #define теперь мы можем просто назвать имена ОК штифтов. Убедитесь, что соблюдается тот же порядок.
ЖК-дисплей LiquidCrystal (RS, EN, D4, D5, D6, D7);
Существует так много типов ЖК-дисплеев, различающихся по размеру и характеру, поэтому в функции void setup () сначала укажите тип ЖК-дисплея, который вы используете в проекте. Здесь мы использовали ЖК-дисплей 16x2.
lcd.begin (16, 2);
Чтобы напечатать что-нибудь на ЖК-дисплее, отметьте в программе две вещи. Один из них - это позиция текста, которая может быть упомянута с помощью строки lcd.setCursor (), а другая - это контент для печати, который может быть упомянут с помощью lcd.print (). Здесь мы устанавливаем курсор на 1- ю строку и 1- й столбец.
lcd.setCursor (0,0);
Точно так же мы можем сделать
lcd.setCursor (0, 1); // установить курсор на 1-й столбец 2-й ряд
Подобно стиранию белой доски после того, как на ней написано, ЖК-дисплей также следует стирать после того, как на нем что-то написано. Это можно сделать, используя строку ниже
lcd.clear ();
В пустой петле () функции, принимает значение горшка с помощью analogRead () функции и сохранять это значение в другом переменном, а затем отображать это значение.
sensorValue = analogRead (sensorPin); lcd.setCursor (0, 0); lcd.print ("Значение АЦП:"); lcd.setCursor (10, 0); lcd.print (sensorValue);
Теперь преобразуйте это значение АЦП в напряжение, просто умножив его на 3,3, потому что это самое высокое напряжение, которое может принимать выводы платы TIVA. Затем разделите умноженное значение на 4096.
lcd.setCursor (0, 1); lcd.print ("Напряжения:"); напряжения = (значение датчика * 3,3) / 4096; lcd.setCursor (10, 1); lcd.print (напряжения);
Полную программу можно найти в конце.
ЖК-дисплей 16x2 с TIVA Launchpad
Когда оборудование и код будут готовы, просто подключите плату TIVA к компьютеру и загрузите код на плату. Следуйте предыдущему руководству, чтобы узнать, как загрузить код в TIVA Launchpad.
После загрузки кода вы должны увидеть на дисплее следующее.
Теперь просто поверните потенциометр, чтобы изменить значение АЦП, и вы увидите, что соответствующее значение напряжения также изменится, как показано на рисунке ниже.
Полный код и подробные видео можно найти ниже. Попробуйте изменить текст, отображаемый на ЖК-дисплее.