Menu
CoddyTech

LCD Termometre

Coddy'nin Arduino Journey'sinin Ekranlar ve Sensörler bölümünün bir parçası. Ders 24 / 24.

Bir termometre birimini derece işaretiyle gösterir: 24.5°C. LCD, harfleri kendi karakter tablosundan çizer ve bu tabloda derece işareti 223 numaradır. Bunu (char)223 ile gönder: (char), print() işlevine 2, 2, 3 rakamlarını yazdırmak yerine 223 numaralı karakteri çizmesini söyler.

lcd.print(celsius, 1);   // bir ondalık basamak: 24.5
lcd.print((char)223);    // derece işareti
lcd.print("C    ");      // boşluklar eski karakterlerin üzerini kapatır

Metnine yazdığın bir ° işe yaramaz: düzenleyici bunu başka iki sayı olarak kaydeder ve ekran bu konumlarda bulunan iki simgeyi çizer.

Serial.println(x, 3) örneğinde olduğu gibi, lcd.print(value, 1) içindeki ikinci sayı bir float değerinin kaç ondalık basamak göstereceğini belirler.

challenge icon

Görev

Orta

Eskiz celsius değerini hesaplıyor ve üst satırda Temperature yazıyor. Alt satırda 24.5°C gibi göster:

  • sıcaklığı bir ondalık basamakla
  • ardından derece işaretini, (char)223 kodunu ve sonra C harfini
  • sonrasında boşluklar bırak; böylece daha kısa bir değer arkada hiçbir şey bırakmaz

Çalıştır'a bas, sıcaklığı değiştir, ardından Kontrol Et'e bas.

Kendin dene

#include <LiquidCrystal.h>

// RS, E, D4, D5, D6, D7
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

const float BETA = 3950;

void setup() {
  lcd.begin(16, 2);
  lcd.print("Temperature");
}

void loop() {
  int reading = analogRead(A0);
  float celsius = 1 / (log(1 / (1023.0 / reading - 1)) / BETA + 1.0 / 298.15) - 273.15;

  // Alt satırda, 24.5°C gibi, bir ondalık basamak ve derece işaretiyle göster
  delay(500);
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Ekranlar ve Sensörler bölümündeki tüm dersler

Kendi başına pratik yap: Arduino playground