// Dört display 7 segment ADC görüntüleme
#include "SevSeg.h" // 7 Segment Display kütüphane dosyası eklenir
SevSeg sevseg;
int trigPin = 11;
int echoPin = 12;
long zaman = 0;
long mesafe_cm = 0;
long mesafe_inch = 0;
void setup() {
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);
pinMode(trigPin, OUTPUT); // Trig pini çıkış olarak ayarlanır
pinMode(echoPin, INPUT); // Echo pini giriş olarak ayarlanır
digitalWrite(trigPin, LOW); // Trig bacağı LOW yapılır
}
void loop() {
digitalWrite(trigPin, LOW); // Trig pini 0'a çekilir.(Zorunlu değildir sadece emin olmak için.)
delayMicroseconds(5); // 5 uS beklenir
digitalWrite(trigPin, HIGH); // Trig pini 1'e çekilir
delayMicroseconds(10); // 10 uS 1'de tutulur
digitalWrite(trigPin, LOW); // Trig bacağı 0'a çekilir ve sensör tetiklenmiş olur
zaman = pulseIn(echoPin, HIGH); // pulseIN fonksiyonu ile Echo pininin kaç uS '1' olduğu ölçülür
mesafe_cm = zaman / 29 / 2;
//mesafe_cm = zaman * 0.034 / 2;
//mesafe_cm = zaman * 0.00675;
mesafe_inch = zaman / 74 / 2; //Süreden mesafe hesaplanır (inch)
//mesafe_inch = zaman * 0.0133 / 2;
//mesafe_inch = zaman * 0.00675;
sevseg.setNumber(mesafe_cm, 0); // ADC değeri 7 Segment Display ekrana yazar
sevseg.refreshDisplay(); // 7 Segment Display ekran yeniler
}