Cat hungry.png
Здравствуйте! Собираем деньги на перевод материалов по электронике(https://www.allaboutcircuits.com/education/). Реквизиты указаны здесь.

Arduino:Примеры/Гайд по использованию LCD-дисплея Nokia 5110 вместе с Arduino

Материал из Онлайн справочника
Перейти к: навигация, поиск

Перевод: Максим Кузьмин (Cubewriter)
Перевел 2686 статей для сайта.

Контакты:

Проверка/Оформление/Редактирование: Мякишев Е.А.


Ambox content.png Черновик


Гайд по использованию LCD-дисплея Nokia 5110 вместе с Arduino[1]

Эта статья рассказывает о том, как использовать LCD-дисплей от телефона Nokia 5110 вместе с платой Arduino. Вначале я опишу сам дисплей и его характеристики, а затем расскажу, как собрать проект, в котором этот дисплей используется, чтобы показать фразу «Hello, World!»

Описание

LCD-дисплей Nokia 5110 очень популярен среди тех, кто увлекается проектами на базе Arduino. Он используется, как правило, в проектах, где нужен графический интерфейс или отображение информации.

Кроме того, модули с этим дисплеем стоят очень недорого и совместимы с любым микроконтроллером.

Характеристики

  • Размеры LCD-матрицы: 84 на 48 точек (вмещает 4 строчки символов)
  • Цена: 2-3 доллара
  • Напряжение: 3,3 вольта
  • Размер модуля: 45,2 на 43,1 мм
  • Модель: Nokia 5110
  • Контроллер: PCD8544
Nokia-5110-LCD 1.jpg

Необходимые компоненты

  • Одна плата Arduino
  • Один LCD-дисплей Nokia 5110
  • Один потенциометр
  • Четыре резистора на 10 кОм
  • Один резистор на 1 кОм
  • Один резистор на 330 Ом
  • Макетная плата

Библиотека

Для этого проекта нам понадобится библиотека «PCD8544». Чтобы установить ее в IDE Arduino, проделайте следующее:

  1. Загрузите отсюда ZIP-архив с библиотекой
  2. Откройте IDE Arduino
  3. Кликните в IDE Arduino на Скетч > Подключить библиотеку > Добавить .ZIP библиотеку... (Sketch > Include Library > Add .ZIP Library...), затем выберите скачанный ZIP-архив и нажмите «Open»

Распиновка

Nokia-5110-LCD-pinout 2.png
  • RST – сброс
  • CE – выбор чипа
  • D/C – переключение между отправкой данных и отправкой команд
  • DIN – входной контакт для последовательных данных
  • CLK – тактовый сигнал
  • VCC – 3,3 вольта
  • LIGHT – управление подсветкой
  • GND – заземление

Схема

LCD-дисплей Nokia 5110 работает на 3,3 вольтах. То есть вы не можете напрямую подключить к нему цифровые контакты Arduino Uno. О том, как переключить 5-вольтовую логику на 3,3-вольтовую, читайте тут.

Чтобы защитить 3,3-вольтовые контакты от перенапряжения, я подключил к ним резисторы. Впрочем, при работе с этим дисплеем для переключения вольтовой логики лучше воспользоваться специальным устройством – преобразователем логического уровня.

Nokia-5110-arduino 3.jpg

Загрузка скетча

После установки библиотеки «PCD8544» нужный скетч уже будет в самой IDE Arduino. Чтобы открыть его, кликните на Файл > Примеры > PCD8544 > HelloWorld (File > Examples > PCD8544 > HelloWorld).

  1. /*
  2.  * Интерфейс с LCD-дисплеем на базе Philips PCD8544
  3.  * или другим совместимым дисплеем
  4.  *
  5.  * Копирайт (c) 2010
  6.  * Карлос Родригес (Carlos Rodrigues), <cefrodrigues@gmail.com>
  7.  *
  8.  * Чтобы использовать этот скетч, подключите восемь контактов
  9.  * LCD-дисплея к Arduino следующим образом:
  10.  *
  11.  * Контакт 1 на LCD-дисплее -> к контакту +3.3V на Arduino
  12.  * Контакт 2 -> к цифровому контакту 3
  13.  * Контакт 3 -> к цифровому контакту 4
  14.  * Контакт 4 -> к цифровому контакту 5
  15.  * Контакт 5 -> к цифровому контакту 7
  16.  * Контакт 6 -> к контакту GND
  17.  * Контакт 7 -> к конденсатору на 10 мкФ -> к контакту GND
  18.  * Контакт 8 -> к цифровому контакту 6
  19.  *
  20.  * Поскольку LCD-дисплей – это 3,3-вольтовое устройство,
  21.  * чтобы подключить его к цифровым контактам Arduino,
  22.  * понадобятся дополнительные компоненты. Но эти компоненты не нужны,
  23.  * если вы используете 3,3-вольтовую версию Arduino
  24.  * вроде Arduino Pro от Sparkfun.
  25.  */
  26.  
  27. #include <PCD8544.h>
  28.  
  29. // массив для нестандартного символа (для смайлика)...
  30. static const byte glyph[] = { B00010000, B00110100, B00110000, B00110100, B00010000 };
  31.  
  32. static PCD8544 lcd;
  33.  
  34. void setup() {
  35.   // дисплеи, совместимые с PCD8544, могут быть разного разрешения...
  36.   lcd.begin(84, 48);
  37.  
  38.   // ставим смайлик на позицию «0» в таблице ASCII:
  39.   lcd.createChar(0, glyph);
  40. }
  41.  
  42. void loop() {
  43.   // переменная для счетчика (чтобы показать,
  44.   // что программа продолжает работать):
  45.   static int counter = 0;
  46.  
  47.   // пишем в первой строке фразу «Hello, World!»:
  48.   lcd.setCursor(0, 0);
  49.   lcd.print("Hello, World!");  //  "Привет, мир!"
  50.  
  51.   // пишем во второй стоке значение из счетчика:
  52.   lcd.setCursor(0, 1);
  53.   lcd.print(counter, DEC);
  54.   lcd.write(' ');
  55.   lcd.write(0);  // вставляем смайлик
  56.  
  57.   // при помощи потенциометра меняем контраст LCD-дисплея:
  58.   // short level = map(analogRead(A0), 0, 1023, 0, 127);
  59.   // lcd.setContrast(level);
  60.  
  61.   delay(200);
  62.   counter++;
  63. }

Демонстрация

Загрузив скетч, вы должны увидеть на LCD-дисплее фразу «Hello, World!»

См.также

Внешние ссылки

  1. randomnerdtutorials.com - Complete Guide for Nokia 5110 LCD with Arduino