Arduino LOL Shield je rozšiřovací modul pro desky formátu Arduino UNO. Tento shield obsahuje celkem 126 modrých LED diod, které jsou rozmístěné v matici 9x14. V balení se pak nachází navíc 10 náhradních LED diod pro případ, že by se nějaká zničila při osazování. Shield totiž obdržíte v neosazeném stavu, kdy v balení najdete samotný plošný spoj, 136 LED diod a pinové lišty pro propojení s Arduino deskou.
Pro řízení LED diod se využívají datové piny D2-D13, takže pokud byste chtěli připojit ještě jiný Shield společně s tímto, můžete používat pouze analogové piny.

Arduino LOL Shield

Pro úspěšné propojení LOL Shieldu ho stačí zapojit do desky Arduino UNO či jiné kompatibilní. LED diody jsou pak napájeny z 5V větve.

Arduino LOL Shield zapojení

Pro úspěšné nahrání uvedeného ukázkového kódu je nutné stáhnout a naimportovat knihovnu LOLShield, návod, jak na to, je uveden zde.
Ukázkový kód obsahuje na svém začátku připojení potřebné knihovny a vytvoření stavové proměnné pro řízení svitu LED diod.
Funkce setup v tomto programu obsahuje pouze inicializaci komunikace s LOL Shieldem.
Nekonečná smyčka loop začíná vždy překlopením stavové proměnné na opačnou hodnotu, abychom docílili pravidelného rozsvícení a zhasnutí LED diod. V následující dvojici for smyček totiž projdeme postupně všech 9 řádku po 14 diodách a pomocí set funkce jim vždy přiřadíme aktuální stav. Mezi jednotlivými set funkcemi je krátká pauza, která je ale pouze pro efekt postupného rozsvícení či zhasnutí. Po ukončení obou for smyček pak ještě uděláme delší pauzu, abychom věděli, kde začíná nový běh smyčky loop.

// Arduino LOL Shield test
// navody.dratek.cz

// připojení potřebné knihovny
#include <Charliplexing.h>
// stavová proměnná pro LED diody
bool stavLed = 0;

void setup() {
  // inicializace komunikace s LOL Shieldem
  LedSign::Init();
}

void loop() {
  // přepnutí stavu na opačnou hodnotu
  stavLed = !stavLed;

  // for smyčka pro 9 řádků (y) a 14 diod (x)
  for (int y = 0; y < 9; y++) {
    for (int x = 0; x < 14; x++) {
      // nastavení LED [x,y] na stav dle proměnné
      LedSign::Set(x, y, stavLed);
      // krátká pauza mezi diodami
      delay(20);
    }
  }
  // delší pauza před novým během smyčky
  delay(500);
}

Po nahrání ukázkového kódu do Arduino desky s připojeným LOL Shieldem můžeme pozorovat například tento výsledek:

Arduino LOL Shield ukázka

Arduino LOL Shield je zajímavý shield, který nám umožňuje vytvářet různá zobrazení stavů, údajů či například herního pole. Zároveň díky nutnosti zapájení celého kitu je tento shield vhodný pro začátečníky, kteří si chtějí vyzkoušet práci s páječkou. Mě zabralo pájení celého kitu necelou hodinu, přičemž jsem při něm testoval páječku uvedenou v předchozím článku.

Seznam použitých komponent:
https://dratek.cz/arduino/974-arduino-uno-r3-atmega328p.html
https://dratek.cz/arduino/1205-arduino-lol-shield-led-matice-modra.html

FB tw

Další podobné články