Katse 5 LCD ekraan

// lisame LiquidCrystal library
#include <LiquidCrystal.h>
// määrame, milliste digitaalpesadega ekraan ühendatud on
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// loome erisümbolid
byte smiley[8] ={0b00000,0b00000,0b01010,0b00000,0b00000,0b10001,0b01110,0b00000};
byte armsDown[8] ={0b00100,0b01010,0b00100,0b00100,0b01110,0b10101,0b00100,0b01010};
byte armsUp[8] ={0b00100,0b01010,0b00100,0b10101,0b01110,0b00100,0b00100,0b01010};
byte kass[8] ={0b00000,0b00000,0b00000,0b10000,0b10011,0b11111,0b01110,0b01010};
byte tydruk[8] ={0b00100,0b01010,0b00100,0b11111,0b00100,0b00100,0b01110,0b11111};
byte v2ikesyda[8] ={0b00000,0b00000,0b00000,0b11011,0b11111,0b11111,0b01110,0b00100};
void setup() {
// algväärtustatakse LDC ekraani read ja veerud
lcd.begin(16, 2);
// defineerime erisümbolid
lcd.createChar(1, smiley);
lcd.createChar(3, armsDown);
lcd.createChar(4, armsUp);
lcd.createChar(5, kass);
lcd.createChar(6, tydruk);
lcd.createChar(7, v2ikesyda);
}
void loop() {
// koht kuhu hakkame joonistama - 3. veerg, esimene rida
lcd.setCursor(2, 0);
// joonistame kassi
lcd.write(5);
// ja tüdruku
lcd.write(6);
//muudame kursori asukohta: 2. rida 14. veerg
lcd.setCursor(13, 1);
// joonistame poisi
lcd.write(3);
delay(400);
//muudame kursori asukohta: 1. rida 5. veerg
lcd.setCursor(4, 0);
//joonistame for tsükli abil väikese pausiga 10 smaili
for (int koht = 0; koht < 10; koht++) {
lcd.write(1);
delay(400);
}
lcd.setCursor(13, 1);
lcd.write(4);
//loobime südameid
for (int koht = 13; koht >= 4; koht--) {
lcd.setCursor(koht, 0);
lcd.write(7);
delay(400);
  }
delay(400);
}

Ülesanne 5 Interaktiivne infoekraan

https://www.tinkercad.com/things/fvsBfc1MNGB?sharecode=LuQYjHiyexe1tbXMIIICL7z08dvwYzzTolMF_Zr_kuc

Ma kasutasin selle projekti jaoks:

  • 1 LCD ekraan
  • 1 Arendusplaat
  • 16 Juhtmed
  • 1 Arduino Uno
  • 1 takisti
  • 1 Potentsiomeeter

Kood:

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2); 

const int potentiometerPin = A0; 

char text1[] = "ROBOOTIKA"; 
char text2[] = "TARpv22";
char text3[] = "TTHK";

byte lill[8] = {
  0b00000,
  0b01010,
  0b10101,
  0b10001,
  0b01110,
  0b00101,
  0b00111,
  0b00100
};

byte armastama[8] = {
  0b00000,
  0b00000,
  0b11011,
  0b11111,
  0b11111,
  0b01110,
  0b00100,
  0b00000
};


byte smile[8] = {
  0b00000,
  0b01010,
  0b01010,
  0b00000,
  0b10001,
  0b01110,
  0b00000,
  0b00000
};

void setup()
{
  lcd.begin(16, 2); 
  lcd.createChar(2,lill);
  lcd.createChar(4,armastama);
  lcd.createChar(6,smile);
}

void loop()
{
  int potValue = analogRead(potentiometerPin); 
  int switchValue = map(potValue, 0, 1023, 0, 7); 
  Serial.println(switchValue);

  if (switchValue == 1)
  {
    lcd.clear();
    lcd.setCursor(0, 0); 
    lcd.print(text1); 
    delay(1000);
  }
  else if (switchValue == 2) 
  {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(text2); 
    delay(1000);
  }
  else if (switchValue == 3) 
  {
    lcd.clear();
    lcd.setCursor(0, 0); 
    lcd.print(text3); 
    delay(1000);
  }
  else if (switchValue == 4)
  {
    lcd.clear();
    lcd.write((uint8_t)2);
    delay(1000);
  }
  else if (switchValue == 5)
  {
    lcd.clear();
    lcd.write((uint8_t)6);
    delay(1000);
  }
  else if (switchValue == 6)
  {
    lcd.clear();
    lcd.write((uint8_t)4);
    delay(1000);
  }
  else 
  {
    lcd.clear(); 
  }
  Serial.println(switchValue);
}
LCD

LCD ekraani kasutamine:

  • Graafilise või tekstilise teabe kuvamiseks
  • Kasutatakse telefoni, arvuti jne ekraanidel
  • Neid kasutatakse meditsiinitehnoloogias
  • Neid kasutatakse autotehnikas