logo
+7 (951) 999-89-94
428003, г. Чебоксары, ул. Федора Гладкова, д.9, оф.319
11.04.2019

Светодиодная панель

Светодиодная панель

На этом уроке мы узнаем как использовать светодиодную панель для вывода информации.

Компоненты

  • Плата Arduino Uno
  • Макетная плата
  • USB кабель
  • Микросхема 74HC595
  • Светодиодная панель
  • Резистор 220 Ом (8 шт.)

Схема

Будем использовать выводы D11, D12, D13 платы Arduino для управления микросхемой 74HC595 и соединим 8 светодиодов светодиодной панели с её выходами.

Соединение компонентов

Скетч

Напишем скетч для управления 8-ю светодиодами с помощью 74HC595.

int latchPin = 12; // connect to ST_CP of 74HC595 (pin 12)
int clockPin = 13; // connect to SH_CP of 74HC595 (pin 11)
int dataPin = 11; // connect to DS of 74HC595 (pin 14)
 
void setup() {
  pinMode(latchPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  pinMode(dataPin, OUTPUT);
}

void loop() {
  byte x = 0x01;
  for (int j = 0; j < 8; j++) {
    digitalWrite(latchPin, LOW);
    shiftOut(dataPin, clockPin, LSBFIRST, x);
    digitalWrite(latchPin, HIGH);
    x <<= 1;
    delay(100);
  }
}

В коде для управления 74HC595 мы объявляем 3 переменные. Также определяем переменную, чтобы управлять состоянием 8-и светодиодов (8 бит данных). Светодиод загорается, когда соответствующий бит равен 1.

Если переменной присваивается значение 0x01, то есть в двоичной системе 00000001, то будет включаться только один светодиод.

  byte x = 0x01; 

В каждом цикле, переменная х отправляется в 74HC595. Процесс отправки выглядит следующим образом:

    digitalWrite(latchPin, LOW); 
    shiftOut(dataPin, clockPin, LSBFIRST, x); 
    digitalWrite(latchPin, HIGH); 

х будет сдвигать 1 бит влево в каждом цикле, что включает следующий светодиод, начиная с 8-го светодиода.

  x <<= 1;

Скомпилируйте и загрузите скетч на плату и понаблюдайте эффект бегущей строки на светодиодной панели.

 

Предыдущий урок | В начало | Следующий урок