ЖК-дисплеи имеют параллельный интерфейс, а это означает, что микроконтроллер должен одновременно манипулировать несколькими выводами интерфейса для управления дисплеем. Интерфейс состоит из следующих контактов:
Вывод выбора регистра (RS), который определяет место в памяти ЖК-дисплея, куда вы записываете данные. Вы можете выбрать либо регистр данных, в котором хранится то, что происходит на экране, либо регистр инструкций, в котором контроллер ЖК-дисплея ищет инструкции о том, что делать дальше.
Контакт чтения/записи (R/W), который выбирает режим чтения или режим записи.
Пин-код включения, который разрешает запись в регистры.
8 контактов данных (D0–D7). Состояния этих контактов (высокий или низкий) — это биты, которые вы записываете в регистр при записи, или значения, которые вы считываете при чтении.
Также есть контакт контрастности дисплея (Vo), контакты питания (+5V и Gnd) и контакты светодиодной подсветки (Bklt+ и BKlt-). которые вы можете использовать для питания ЖК-дисплея, управления контрастностью дисплея и включения и выключения светодиодной подсветки соответственно.
В этом посте я хотел бы показать вам, как кодировать Arduino с ЖК-дисплеем, используя библиотеку Javascript JohnnyFive.
Для настройки схемы вы можете следовать документации JohnnyFive здесь
Когда вы настроили свою схему, пришло время для базового кодирования. По сути, нам нужно три основных компонента в нашем коде:
- Доска
- ЖК
- Библиотека JohnnyFive
Итак, давайте приведем их:
var five = require('johnny-five'),
board = new five.Board(),
lcd;
Когда плата будет готова, она вызовет событие, для которого нам нужно реализовать обработчик, чтобы управлять основной логикой.
board.on('ready', function() { //all your logic here });
В нашем обработчике сначала нам нужно создать экземпляр ЖК-объекта с нужными нам свойствами и контактами. Выводы, которые мы определяем в конструкторе объектов, должны быть такими же, как выводы, которые мы используем для ЖК-дисплея на плате. Другие свойства включают подсветку ЖК-дисплея, количество строк, количество столбцов , битовый режим, точки. em> и линии, которые мы хотели бы определить для нашего ЖК-дисплея. Это определенно зависит от размера вашего ЖК-дисплея.
board.on('ready', function() {
lcd = new five.LCD({
pins: [4, 7, 10, 11, 12, 13],
backlight: 6,
rows: 2,
cols: 20 });
});
Теперь ЖК-дисплей готов прочитать ваш текст. Есть несколько методов, которые мы можем использовать от JohnnyFive для работы с ЖК-дисплеем:
- Распечатать
- использоватьChar
- чистый
- курсор
Вы можете использовать все эти методы и создавать осмысленные и интересные тексты на ЖК-дисплее. ЖК-дисплей может быть полезен для отображения информации с любых других входов вашего Arduino. Его можно использовать для отображения температуры в помещении или расстояния вашего бота от стены. Попробуйте!
Первоначально опубликовано на nazaninde.ghost.io 4 июля 2016 г.