- Необходимые материалы:
- Краткое знакомство с матричным ЖК-дисплеем 16 × 2:
- Принципиальная схема и подключение:
- Программирование MSP430 для LCD с помощью Energia:
- ЖК-дисплей 16x2 с MSP430G2:
Это третье руководство в последовательности руководств, в которых мы учимся программировать LaunchPad MSP430G2 с помощью Energia IDE. В нашем предыдущем руководстве мы узнали, как управлять контактами цифрового входа и выхода на нашей плате MSP. В этом руководстве мы узнаем, как подключить ЖК-дисплей к плате, чтобы отображать полезную информацию.
ЖК-дисплей, который мы используем в этом проекте, является наиболее часто используемым ЖК-дисплеем с точечной матрицей 16 × 2 или буквенно-цифровыми дисплеями. Большинство из нас столкнулось бы с этим либо через публичные PCO, либо через другие проекты в области электроники. Такой дисплей очень пригодится в наших будущих руководствах для отображения данных и другой отладочной информации. Подключить этот ЖК-дисплей к MSP430 очень просто благодаря доступной библиотеке. Итак, приступим !!
Необходимые материалы:
- MSP430G2 LaunchPad от Texas Instruments
- Матричный ЖК-дисплей 16 × 2
- Соединительные провода
- Энергия IDE
Краткое знакомство с матричным ЖК-дисплеем 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 контактов должны использоваться в обязательном порядке для правильной работы ЖК-дисплея, если вы хотите узнать больше об этих ЖК-дисплеях, перейдите к этой статье о ЖК-дисплее.
Принципиальная схема и подключение:
Полная принципиальная схема для сопряжения матричного ЖК-дисплея 16 × 2 с MSP430G2 показана ниже.
Одним из основных ограничений при взаимодействии этих двух устройств является их рабочее напряжение. ЖК - дисплей имеет рабочее напряжение +5 В то время как MSP работает только с 3.6В. К счастью для нас, вывод данных ЖК-интерфейса IC (HD44780U) имеет широкое рабочее напряжение от 2,7 В до 5,5 В. Таким образом, нам нужно беспокоиться только о Vdd (вывод 2) ЖК-дисплея, в то время как выводы данных могут работать даже с 3,6 В.
Плата MSP430G2 по умолчанию не дает вам вывода + 5V, но мы можем сделать небольшой взлом, чтобы получить + 5V от MSP430 через порт USB. Если вы внимательно посмотрите возле USB-порта, вы найдете терминал под названием TP1, этот терминал даст нам + 5В. Все, что нам нужно сделать, это припаять небольшой штыревой разъем, как показано ниже, чтобы мы могли подключить его к нашему ЖК-дисплею.
Примечание. Не подключайте нагрузки, которые могут потреблять более 50 мА, к этому контакту 5 В, это может привести к сгоранию порта USB.
Если вас не интересует пайка, просто используйте любой стабилизированный источник питания + 5 В и запитайте ЖК-дисплей, в этом случае убедитесь, что вы подключили заземление источника питания к земле платы MSP.
Как только вы закончите с контактом + 5V, подключить другие контакты довольно просто. Теперь, когда наше оборудование готово, перейдем к программной части.
Программирование MSP430 для LCD с помощью Energia:
Полная программа для взаимодействия в MSP430G2553 с ЖК - дисплеем приводится в конце этой страницы. Код можно скомпилировать, загрузить и использовать как таковой. В следующих параграфах я объясню, как работает программа.
Прежде чем приступить к объяснению, мы должны отметить контакты, которые мы используем. Если вы посмотрите на схему выше и распиновку MSP430 ниже
Можно сделать вывод, что мы подключили ЖК-дисплей согласно следующей таблице.
Имя вывода ЖК-дисплея |
Соединен с |
Vss |
Земля |
Vdd |
+ 5V вывод USB |
Рупий |
Контакт 2 MSP |
R / W |
Земля |
включить |
Контакт 3 MSP |
D4 |
Контакт 4 MSP |
D5 |
Вывод 5 MSP |
D6 |
Контакт 6 MSP |
D7 |
Вывод 7 MSP |
Имея это в виду, давайте начнем определять выводы ЖК-дисплея, используемые в нашей программе. Мы назовем каждый вывод более значимым именем, чтобы мы могли легко его использовать позже.
#define RS 2 #define EN 3 #define D4 4 #define D5 5 #define D6 6 #define D7 7
Это просто означает, что вместо того, чтобы вызывать контакт 2, я могу в дальнейшем называть его RS, аналогично для всех 6 контактов.
Следующим шагом будет включение библиотеки LCD. Эта библиотека была бы установлена автоматически при установке Energia IDE. Так что просто добавьте его, используя следующую строку
#включают
Следующим шагом является упоминание выводов, к которым подключен ЖК-дисплей, поскольку мы уже назвали его с помощью #define, теперь мы можем просто указать имена контактов ЖК-дисплея. Убедитесь, что соблюдается тот же порядок.
ЖК-дисплей LiquidCrystal (RS, EN, D4, D5, D6, D7);
Теперь давайте перейдем к аннулируются настройки () функции. Существует так много типов ЖК-дисплеев, различающихся по размеру и характеру, один, который мы используем, имеет размер 16 * 2, поэтому давайте укажем это в нашей программе
lcd.begin (16, 2);
Чтобы что-то напечатать на ЖК-дисплее, мы должны упомянуть в программе две вещи. Один из них - это позиция текста, которая может быть упомянута с помощью строки lcd.setCursor (), а другая - это контент для печати, который может быть упомянут с помощью lcd.print (). В этой строке мы устанавливаем курсор на 1- ю строку и 1- й столбец.
lcd.setCursor (0,0);
Точно так же мы можем
lcd.setCursor (0, 1); // устанавливаем курсор на 1-й столбец 2-й ряд
Подобно стиранию белой доски после того, как на ней написано, ЖК-дисплей также следует стирать после того, как на нем что-то написано. Это можно сделать, используя строку ниже
lcd.clear ();
Таким образом, полная функция void setup () будет выглядеть примерно так.
void setup () {lcd.begin (16, 2); // Мы используем ЖК-дисплей 16 * 2 lcd.setCursor (0,0); // Поместите курсор в 1-ю строку 1-го столбца lcd.print ("MSP430G2553"); // Отображаем вводное сообщение lcd.setCursor (0, 1); // установить курсор в 1-й столбец 2-й ряд lcd.print ("- CircuitDigest"); // Отображаем задержку вступительного сообщения (2000); // Дождитесь отображения информации lcd.clear (); // Затем чистим}
Затем внутри нашей функции void loop () давайте продолжим увеличивать число на каждые 500 мс и отображать число на ЖК-дисплее. Это число проверяет и инициализируется 1, как показано ниже.
int test = 1;
Для создания задержки мы можем использовать встроенную функцию delay (). Мы должны указать, сколько времени нам нужно, чтобы произошла задержка. В нашем случае я использовал 500 мс, как показано ниже.
задержка (500);
Увеличение переменной может быть выполнено с помощью test ++, все остальное уже объяснено. Полный код внутри пустот петли показан ниже
void loop () {lcd.print («ЖК-дисплей с MSP»); // Отображаем вводное сообщение lcd.setCursor (0, 1); // установить курсор в столбец 0, строка 1 lcd.print (test); // Отображаем задержку вступительного сообщения (500); lcd.clear (); // Затем очищаем test ++; }
ЖК-дисплей 16x2 с MSP430G2:
Когда ваше оборудование и код будут готовы, просто подключите плату к компьютеру и загрузите код, как мы это делали в первом уроке. После загрузки кода вы должны увидеть на дисплее следующее.
Через две секунды экран дисплея изменится с настройки на цикл, начнется приращение переменной и отобразится на экране, как показано на рисунке ниже.
Полный рабочий можно найти в видео ниже. Попробуйте изменить то, что отображается на ЖК-дисплее, и поиграйте с этим. Надеюсь, вы поняли руководство и узнали что-то полезное из него. Если у вас есть сомнения, оставьте их в разделе комментариев ниже или используйте форумы. Давайте встретимся в другом уроке.