// Dört display 7 segment ADC görüntüleme
#include "SevSeg.h" // 7 Segment Display kütüphane dosyası eklenir
SevSeg sevseg;
#include "DHT.h" // DHT kütüphanesi ekleniyor
#define DHTPIN A4 // DHT sensör için pin
// DHT seçimi
#define DHTTYPE DHT22 // DHT 11, DHT 22, DHT 21
DHT dht(DHTPIN, DHTTYPE);
void setup() {
dht.begin(); // DHT sensörü başlatır
byte numDigits = 4; // Digit sayısı
byte digitPins[] = { 10, 9, 8, 7 }; // Digit pinleri
byte segmentPins[] = { 0, 1, 2, 3, 4, 5, 6, 13 }; // 7 Segment ve nokta pinleri
bool resistorsOnSegments = false; // 'false' direnç kullanılmış
byte hardwareConfig = COMMON_ANODE; // Ortak anod yada katod
bool updateWithDelays = false; // 'false' varasayılan bekletme
bool leadingZeros = false; // Baştaki sıfırlar olması 'true'yu kullanın
bool disableDecPoint = false; // Ondalık noktanız mevcut değilse 'true' kullanın
disableDecPoint = false; // Ondalık nokta yoksa 'true' kullanın
sevseg.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments,
updateWithDelays, leadingZeros, disableDecPoint);
sevseg.setBrightness(90);
}
void loop() {
// Ölçümler arasında birkaç saniye bekleyin.
//delay(250);
// Sıcaklık veya nemi okumak yaklaşık 250 milisaniye sürer
// Sensör okumaları eski sensörlerde 2 saniyeye kadar olabilir
int h = dht.readHumidity(); // Nem değerini oku
int t = dht.readTemperature(); // Sıcaklığı Santigrat olarak oku (varsayılan)
int f = dht.readTemperature(true); // Sıcaklığı Fahrenheit olarak oku (isFahrenheit = true)
// Herhangi bir okumanın başarısız olup olmadığını kontrol edin ve erkenden çıkın (tekrar denemek için).
if (isnan(h) || isnan(t) || isnan(f)) {
return;
}
//sprintf_P(cstr, (PGM_P)F("%02d:%02d:%02d"), hours, minutes, seconds);
//-> "03:23:11"
//sevseg.setChars("ABCD");
//Char char_t = t;
//char_t = char_t + "C";
//sprintf_P (t,"C");
char newChar[4];
String temp_str = String(t);
temp_str.toCharArray(newChar,4);
//String newChar_t="d";
//newChar_t = newChar & "C";
//newChar[3]='d';
//char *myStrings[] = {newChar, 'd'};
//sevseg.setChars(*myStrings);
sevseg.setChars(newChar);
//sevseg.setNumber(t); // Sıcaklık değeri Segment Display ekrana yazar
sevseg.refreshDisplay(); // Segment Display ekran yeniler
}