GeekElectronics

Блог о программировании, электронике и рыбалке

Подключение LCD Keypad Shield к Arduino

Главная » Arduino » Подключение LCD Keypad Shield к Arduino

подключение Shield LCD Keypad Arduino  arduino  Сегодня я решил описать процесс подключения к контроллеру Arduino платы LCD Keypad Shield и пример работы с ним.

Сам LCD Keypad Shield представляет собой плату с двухстрочным экраном и 6-ю кнопками. Его очень удобно использовать в проектах, так как не надо разводить провода на макетной плате - тут все уже сделали за вас.

Разработчики этого шилда очень грамотно поступили, подключив все кнопки через резисторы разного сопротивления к аналоговому пину. Это позволило сэкономить 5 дискретных пинов для других нужд.

подключение Shield LCD Keypad Arduino  arduino

Используемые пины

A0 - кнопки (Select, Up, Right, Down, Left)

D4-D10 - подключение экрана

Проверочный скетч для LCD Keypad Shield

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.setCursor(0,0);
  lcd.print("LCD Key Shield");
  lcd.setCursor(0,1);
  lcd.print("Press Key:");
}

void loop() {
  int x;
  x = analogRead (0);
  lcd.setCursor(10,1);
  if (x < 60) {
    lcd.print ("Right ");
  }
  else if (x < 200) {
    lcd.print ("Up    ");
  }
  else if (x < 400){
    lcd.print ("Down  ");
  }
  else if (x < 600){
    lcd.print ("Left  ");
  }
  else if (x < 800){
    lcd.print ("Select");
  }
}

В данном скетче реализовано отображение названий нажатых клавиш.

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

Ничего не нажато

подключение Shield LCD Keypad Arduino  arduino

Нажата кнопка Select

подключение Shield LCD Keypad Arduino  arduino

Нажата кнопка Left

подключение Shield LCD Keypad Arduino  arduino

Нажата кнопка Up

подключение Shield LCD Keypad Arduino  arduino

Нажата кнопка Down

подключение Shield LCD Keypad Arduino  arduino

Нажата кнопка Right

подключение Shield LCD Keypad Arduino  arduino

logo

21
  • Денис:

    Спасибо, реально заработал шилд, до этого никак не мог разобраться с назначением кнопок, DOWN постоянно показывал LEFT

    • Юра:

      Пришлось подменить значение на 300 у (down) else if (x < 300){
      lcd.print ("Down "); тогда заработало все коректною

  • Антоха:

    Ни хера не запустилось, мой шилд проклят китайцами?!!

  • Антоха:

    Работает, очень глупая ошибка была, не выставил arduino uno до этого leonardo тестил.

  • Юрий:

    Спасибо! Все работает!

  • Александр:

    Спасибо . всё работает// побольше разных примеров бы

  • Andrew:

    Такой вопрос: экраном заняты пины D4-D10. Но D10 используется для шины SPI, и я не могу, в частности, подключить датчик GY-BMP280-3.3. Можно ли переназначить пины, занимаемые дисплеем? Например, кинуть перемычку на D3, обрезав пин D10, идущий от экрана к ардуине. Но я не нашел в скетче место, где упоминается D10. Ведь изменения нужно внести и в скетч. Или придется искать другой экран?

    • source™:

      из верхней части скетча
      LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

    • Никита:

      10 пин задействован под регулировку яркости

      • Зина:

        Совсем ку-ку? яркость регулируется подстроечным резистором

        • Сергей:

          10 пин используется для шим регулировки яркости подсветки, а подстроечный резистор нужен для регулировки контрастности экрана. Контрастность и яркость разные вещи.

  • Aleks:

    Спасибо!
    Оказалось, что нужно было контрастность отрегулировать.
    Все работает!

  • J@koW:

    Спасибо. Все работает, но при использовании ацп на соседнем А1 функция analogread(a0) вешала АЦП... После долгих мучений пришол к выводу, что с этим шилдом лучше делать опрос церез АЦП с прерыванием.

  • miasoft:

    Спасибо! Всё заработало!

  • Александр:

    Вы что спецом над начинающими издеваетесь? Где в скетче это? #include

  • Александр:

    #include

  • Александр:

    #include Wire.h

  • вася:

    Ардуино лентяй

  • вася:

    cvavr тема

  • Avazart:

    А как насчет дребезга контактов ?

Добавить комментарий

Яндекс.Метрика