- •Курс «Основы робототехники». Занятие 7 Вывод информации
- •7.1. Генерация звука
- •Практическое занятие 1. Проигрывание заданной мелодии
- •Практическое занятие 2. Управление звуком резистором
- •7.2. Жк индикатор
- •Практическое занятие 2. Проверка и настройка жк индикатора
- •Практическое занятие 4. Эффекты
- •Практическое занятие 5. Вывод текста на жк индикатор
- •Практическое занятие 6. Управление звуком кнопками жк индикатора
- •Практическое занятие 7. Собственные символы
- •Практическое занятие 8. Музыкальный автомат
- •Домашнее задание
- •Задача 1. Спикер (с)
- •Задача 2. Жк индикатор
7.2. Жк индикатор
Для работы с используемым в курсе ЖК индикатором (2 строки по 16 символов) используется библиотека LiquidCrystal, уже имеющаяся в составе программы Arduino IDE.
Практическое занятие 2. Проверка и настройка жк индикатора
установите ЖК шилд (LCD Shield) на Arduino Uno
откройте пример работы с ЖК индикатором: Файл / Примеры / Liquid Crystal / HelloWorld
приведенная в строке LiquidCrystal lcd(12, 11, 5, 4, 3, 2); нумерация контактов не соответствует таковой в используемом ЖК шилде, исправьте ее на:
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
загрузите программу в контроллер. При отсутствии текста на дисплее или плохом качестве попробуйте настроить контрастность, поворачивая резистор на шилде
Примечание: так как приведенные цифровые пины – 8, 9, 4, 5, 6, 7 используются для связи с ЖК индикатором, использовать их для чего-то еще нельзя (например, не будут работать подключенные к этим контактам светодиоды)
Практическое занятие 4. Эффекты
откройте и загрузите в контроллер программу Файл / Примеры / Liquid Crystal / Scroll
откройте и загрузите в контроллер программу Файл / Примеры / Liquid Crystal / Autoscroll
откройте и загрузите в контроллер программу Файл / Примеры / Liquid Crystal / Display
Практическое занятие 5. Вывод текста на жк индикатор
выведите на ЖК индикатор транслитом данные занимающихся на стенде: в первой строке Фамилия Имя одного занимающегося, во второй строке Фамилия Имя другого (или какой-то другой текст, если занимающийся один)
попробуйте различные эффекты – мигание (выводить и стирать текст), автоскролл с надписями фамилий или другими надписями на усмотрение
Практическое занятие 6. Управление звуком кнопками жк индикатора
загрузите программу Файл / Примеры / Analog / AnalogInOutSerial в контроллер
откройте программу, написанную на предыдущем занятии (скопируете из папки других участников, если не была сохранена своя программа)
подключите к плате спикер. Пользуйтесь аналоговыми входами ЖК индикатора. Для использования их как цифровых используется соответствие: А0=14, А1=15 и т.д.
напишите программу, которая включает определенную частоту при нажатии на определенную кнопку. Для облегчения программирования условий запишите значения, полученные для каждой кнопки, в переменные right, up и т.д. Приведен фрагмент кода программы:
int speaker = 15; // пин, к которому подключен спикер (А1) int right = 0; // значение, выдаваемое при нажатии кнопки Right int up = x1; // значение, выдаваемое при нажатии кнопки Up int down = x2; // значение, выдаваемое при нажатии кнопки Down int left = x3; // значение, выдаваемое при нажатии кнопки Left int select = x4; // значение, выдаваемое при нажатии кнопки Select
int f1 = 100; … // частоты (можно поставить другие) int f5 = 500; int note_duration = 500; // длительность проигрывания ноты … if (sensorValue == right) { // если снятое с аналогового входа значение равно значению, определенному для нажатия кнопки Right tone (speaker, f1, note_duration); // выдаем звук определенной длительности } … |
загрузите программу в контроллер и опробуйте ее работу