Arduino UNO — Подключаем LCD. Урок 10

В этом уроке по Arduino UNO мы рассмотрим подключение LCD. Среда Arduino IDE уже идет с примером (скетчем) по подключению LCD-дисплея Hitachi HD44780. Мы будем использовать аналогичный LCD: Pololu 16x2 LCD 773 или 772.

Чтобы не повторяться с оригинальным примером из IDE, где для управления контрастностью дисплея использовался потенциометр, мы внесем некоторые изменения в проект. Используя один из выходом ШИМ с конденсатором (и т.о. сделаем простейший ЦАП), мы будем управлять контрастностью с программы, где "жестко" будет прописано значение. Вывод 9 Arduino, который используется как ШИМ, соединен к ногой управления контрастностью Vo LCD. Конденсатор 100 мкФ, соединен между выходом ШИМ и общим.

Контрастность LCD зависит от величины напряжения, которое подается на вход управления. Чем больше напряжение, тем меньше контрастность и наоборот. Напряжение должно быть около 0.5-1 В, но еще зависит от окружающей температуры. В нашем скетче значение ШИМ установлено на 50 (примерно 20% заполнение), что обеспечивает уровень выходного напряжения около 1 В. Соответственно вы можете увеличивать или уменьшать данное значение для получения необходимого уровня контрастности.

Ниже вы можете видеть пинаут LCD-Arduino

Arduino UNO — Подключаем LCD. Урок 10


На картинке ниже, макет присоединения



Ниже представлен скетч для Arduino. Значение контрастности на ШИМ-выходе устанавливается при инициализации программы, однако вы можете доработать проект, сделав внешнее управление контрастностью. К примеру сделав 2 кнопки + и -, соответственно внеся необходимые изменения в программу.
/*
 Демонстрация работы с 16x2 LCD дисплеем.  Библиотека LiquidCrystal
 работает со всеми LCD совместимыми с Hitachi HD44780.
 
 Данный скетч отображает на LCD "Hobbytronics".
 Скетч основан на оригинальном скетче Arduino 
 http://www.arduino.cc/en/Tutorial/LiquidCrystal
 с модификациями, позволяющими вручную устанавливать
 контрастность дисплея
 
  Схема подключения:
 * LCD RS пин к цифр. выходу 12
 * LCD Enable пин к цифр. выходу 11
 * LCD R/W к Общему
 * LCD VO пин (пин 3) к ШИМ-выходу 9
 * LCD D4 пин к цифр. выходу 5
 * LCD D5 пин к цифр. выходу 4
 * LCD D6 пин к цифр. выходу 3
 * LCD D7 пин к цифр. выходу 2
 */
#include <liquidcrystal.h>  // подключаем библиотеку
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);  // инициализация библиотеки с перечнем задействованных выводов
void setup() {
  pinMode(9, OUTPUT);  
  analogWrite(9, 50);   // устанавливаем ШИМ выход   
  lcd.begin(16, 2);     // устанавливаем кол-во столбцов и строк
  lcd.print("  HobbyTronics");  // печать сообщения на LCD
}
void loop() {
  // устанавливаем курсор в 0-ом столбце, 1 строка (начинается с 0)
  lcd.setCursor(0, 1);
  lcd.print(millis()/1000); // печать числа секунд после сброса
}
</liquidcrystal.h>

0 комментариев

Ваше имя: *
Ваш e-mail: *
Войти через
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
Введите два слова, показанных на изображении:
© 2016 Все права соблюдены.