Su ostukorv on hetkel tühi!
Skeem:

Ekraani ühendamine ja teksti kuvamine 1602 LCD ekraanil
Kasutatud komponenid:
Arduino UNO plaat (1tk)
Arendusplaat (1tk)
1602 LCD ekraan (1tk)
Potentsiomeeter (1tk)
tavalised üksikud isane-isane juhtmed (16tk)
330 Ω takisti (1tk)
Programm:
// 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); }
5.2. DateTime (RTClib.h teeke kasutamine)
Skeem:

RTClib.h teeke installimine ja kasutamine
Kasutatud komponenid:
Arduino UNO plaat (1tk)
Programm:
// lisame RTClib.h library #include <Wire.h> #include <RTClib.h> RTC_DS1307 rtc; void setup () { Serial.begin(9600); Wire.begin(); rtc.begin(); if (! rtc.isrunning()) { Serial.println("RTC is NOT running!"); // following line sets the RTC to the date & time this sketch was compiled rtc.adjust(DateTime(__DATE__, __TIME__)); } } void loop () { DateTime now = rtc.now(); char dt[10]; char tm[10]; sprintf(dt, "%02d/%02d/%02d", now.year(),now.month(),now.day()); sprintf(tm, "%02d:%02d:%02d", now.hour(),now.minute(),now.second()); Serial.print(dt); Serial.print(" "); Serial.print(tm); Serial.println(); delay(1000); }


Ülesanne 5 Interaktiivne infoekraan “Ilmajaam”
Skeem:

Kasutatud komponenid:
Arduino UNO plaat (1tk)
Arendusplaat (1tk)
1602 LCD ekraan (1tk)
Potentsiomeeter (1tk)
Juhtmed (16tk)
220 Ω takisti (1tk)
Video:
Tööprotsess:
Ekraan töötab sõltuvalt potentsiomeetri asendist ja näitab ekraanil aega.
Reaalsed rakendused:
Vedelkristallkuvarid on laialdaselt kasutusel graafilise või tekstilise teabe kuvamiseks mitmesugustes seadmetes, nagu arvutimonitorid (sh sülearvutid), televiisorid, telefonid, digikaamerad, navigaatorid, tahvelarvutid, elektroonilised tõlkeseadmed, kalkulaatorid ja kellad.
Programm:
#include <LiquidCrystal.h> LiquidCrystal lcd(12,11,5,4,3,2); int h=15; int m=59; int s=48; int flag; int TIME; const int hs=8; const int ms=9; const int POTENTIOMETER_PIN=0; int state1; int state2; void setup() { lcd.begin(16,2); } void loop() { lcd.setCursor(0,0); s=s+1; lcd.print("TIME:"); lcd.print(h); lcd.print(":"); lcd.print(m); lcd.print(":"); lcd.print(s); if(flag<12)lcd.print("AM"); if(flag==12)lcd.print("PM"); if(flag>12)lcd.print("PM"); if(flag==24)flag=0; delay(1000); lcd.clear(); if(s==60){ s=0; m=m+1; } if(m==60) { m=0; h=h+1; flag=flag+1; } if(h==13) { h=1; } lcd.setCursor(0,1); lcd.print("HAVE A NICE DAY"); //-------Time // setting-------// state1=digitalRead(hs); if(state1==1) { h=h+1; flag=flag+1; if(flag<12)lcd.print("AM"); if(flag==12)lcd.print("PM"); if(flag>12)lcd.print("PM"); if(flag==24)flag=0; if(h==13)h=1; } state2=digitalRead(ms); if(state2==1){ s=0; m=m+1; } }
Uued funktsioonid:
#include <LiquidCrystal.h> - Включает библиотеку LiquidCrystal, которая предоставляет функции для работы с жидкокристаллическими дисплеями (LCD) lcd.setCursor(0,0); - Устанавливает курсор LCD в позицию (0,0). Первое значение - Номер столбца, а второе значение - номер строки. lcd.print("TIME:"); - Выводит текст "TIME:" на LCD, начиная с определенной позиции lcd.clear(); - очищает содержимое LCD