Teema 5 LCD ekraan

Ülesanne 5 “Ilmajaam”

Töö kirjeldus

Selle ülesande eesmärk on luua oma kujundatud mini-ilmajaam, mis kuvab andmete põhjal teavet LCD-ekraanil. Kasutades erinevaid andureid (nt temperatuurisensor, valgustundlik andur, kella moodul jne), kuvatakse reaalajas ilmastikutingimused, asjakohased laused ja vastavad pildid, mis võivad muutuda sõltuvalt ajast või mõõdetud andmetest. Õpilased peavad mõtlema oma ilmajaamale nime, looma iseloomuliku tööprotsessi ja kasutama vähemalt 5 erinevat sõnumit ja pilti, mida kuvatakse LCD-ekraanil.

Komponendid

1x LCD Ekraan
1x Temperatuuri Sensor
1x Photoresistor
1x Potentsiometer
1x 220 Oom Takisti
1x 10K Oom Takisti
21x Juhtmed

Kood

GitHub Link

Uued funktsioonid

  1. millis() – Tagastab ajavahemiku alates programmi käivitamisest millisekundites. Seda saab kasutada ajastusülesannete täitmiseks.
  2. lcd.begin() – Algatab LCD-ekraani ja määrab selle mõõtmed (näiteks 16×2 ekraan). See käsk tuleb tavaliselt kutsuda enne ekraanil kuvamise alustamist.
  3. lcd.clear() – Kustutab kõik ekraanilt kuvatavad andmed ja taastab ekraani puhtaks.
  4. lcd.setCursor() – Määrab kursorikoha LCD-ekraanil, et alustamiseks või tekstide kuvamiseks valida õige rida ja veerg.
  5. lcd.print() – Kuvab sõnumi või väärtuse LCD-ekraanil, näiteks tähed, numbrid või muutujad.

Töö protsess

  1. LiquidCrystal lcd(12, 11, 5, 4, 3, 2) – Algatame LCD-ekraani, ühendades selle määratud pinit
  2. currentMillis = millis()
  3. if (currentMillis – previousMillis >= interval) – Kui on möödunud 1 sekund (1000 ms), siis:
    lightLevel = analogRead(lightPin) – Loeme valgusanduri väärtuse analoogpinnilt (A0).
    voltage = getVoltage(tempPin) – Loeme temperatuurianduri väärtuse ja teisendame selle pingeks.
    temperature = (voltage – 0.5) * 100.0 – Arvutame temperatuuri, kasutades temperatuurianduri teisendustabelit (saame väärtuse Celsiuse järgi)
    degreesF = temperature * (9.0/5.0) + 32.0 – Arvutame temperatuuri Fahrenheiti järgi.

Video

Google Drive Link