Arduino 2 laidų LCD skydas 2015.03.30 at 14:06

Angliškai tas dalykas vadintųsi Arduino two wire LCD shield. Šitas truputį geresnis už tą, siūlomą Internete – vietoj paprasto diodo su varža čia įmontavau tikrą IR loginį elementą, bet naudoja tą pačią ShiftRegLCD123 biblioteką. Viskas veikia, raudonas LED rodo, kad yra maitinimas. Visi pinai „perkelti“ specialiom šukom ir gali būti naudojami taip, lyg jungimas būtų tiesiai prie Arduino. Išskyrus 7 ir 8 piną – šitie panaudoti duomenų šėrimui į LCD skydą. Kol dar turiu PCB, kam patinka – plika PCB 6 €, surinkta 25 €, neskaitant siuntimo išlaidų (PCB Kaune). Keletas paveiksliukų:

IMAG1467IMAG1470IMAG1471IMAG1472IMAG1473IMAG1474IMAG1475IMAG1476IMAG1477IMAG1478IMAG1479PCB yra čia, o programa labai paprasta, tik parodyti, kad šitas stebuklas veikia:

 

#include <ShiftRegLCD123.h>

long int laikas = 0;       // Laiko kintamasis
const int dataPin  = 8;    // Data signalas iš Arduino 8 kontakto
const int clockPin = 7;    // Clock signalas iš Arduino 7 kontakto


ShiftRegLCD123 lcd(dataPin, clockPin, SRLCD123);

void setup()
{
  pinMode(13, OUTPUT);        // Inicializiejam 13 kontaktą LEDo uždegimui
  lcd.begin(16,2);            // Inicializuojam LCD ekraną (16x2 konfigūracija)
  lcd.noCursor();             // Nustatome, kad kursorius ekrane nebus rodomas
}

void loop()
{
  laikas = millis()/1000;            // skaiciuojam laiką nuo starto
  lcd.print("Laikas nuo strt:");     // parašom teksta

  lcd.setCursor (0,1);               // Nustatom kursorių į antros eilutės 1 langelį
  lcd.print (laikas);                // Rašom tekstą
  lcd.setCursor (7,1);               // Nustatom kursorių į antros eilutės 7 langelį (pirmas būtų 0)
  lcd.print("sekundziu");            // parašom teksta
  digitalWrite(13, HIGH);            // uždegam LEDą
  delay (500);                       // Laukiam 500 ms, kad pamatyti tekstą ekrane
  digitalWrite(13, LOW);             // Gesinam LEDą
  lcd.clear ();                      // Išvalom ekraną kiekvieno LOOP ciklo pabaigoje
}

Leave a Reply

*