Arduino'da operatörler ve eşitlik ifadeleri, değişkenlerle işlem yapmak, karar verme mekanizmaları oluşturmak ve programlama yapılarının temelini oluşturur. Bu konuyu Matematiksel Operatörler, Mantıksal Operatörlerve Eşitlikler olarak üç başlık altında ele alacağız. Her bir başlıkta detaylı açıklamalar, tablolar ve örneklerle konuyu pekiştireceğiz.
1. Matematiksel Operatörler
Matematiksel operatörler, Arduino'da temel aritmetik işlemleri yapmak için kullanılır. Bu operatörler, sensörlerden gelen verileri işlemek, matematiksel hesaplamalar yapmak ve kontrol mekanizmalarını yönetmek için sıklıkla kullanılır.
Matematiksel Operatörler Tablosu
| Operatör | Açıklama | Örnek Kullanım | Sonuç |
|---|---|---|---|
+ | Toplama | x + y | x ve y’nin toplamı |
- | Çıkarma | x - y | x ve y’nin farkı |
* | Çarpma | x * y | x ve y’nin çarpımı |
/ | Bölme | x / y | x’in y’ye bölümü |
% | Mod Alma (Kalan Bulma) | x % y | x’in y’ye bölümünden kalan |
++ | Bir artırma | x++ | x’in değeri 1 artar |
-- | Bir azaltma | x-- | x’in değeri 1 azalır |
Matematiksel Operatörlerle Örnekler
Örnek 1: İki Sensör Değerinin Toplamını ve Ortalamasını Hesaplama
int sensor1 = A0; // Sensör 1 pini
int sensor2 = A1; // Sensör 2 pini
int toplam;
float ortalama;
void setup() {
Serial.begin(9600);
}
void loop() {
int deger1 = analogRead(sensor1); // Sensör 1 değerini oku
int deger2 = analogRead(sensor2); // Sensör 2 değerini oku
toplam = deger1 + deger2; // Değerleri topla
ortalama = toplam / 2.0; // Ortalamayı hesapla
Serial.print("Toplam: ");
Serial.println(toplam);
Serial.print("Ortalama: ");
Serial.println(ortalama);
delay(1000);
}
Örnek 2: LED Yanıp Sönme Süresini Mod Alma ile Ayarlama
int ledPin = 13;
int sure = 1000; // Başlangıç süresi
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
digitalWrite(ledPin, HIGH);
delay(sure % 1500); // Mod işlemi ile süreyi belirle
digitalWrite(ledPin, LOW);
delay(sure % 1500);
sure += 100; // Süreyi artır
}
2. Mantıksal Operatörler
Mantıksal operatörler, birden fazla koşulu değerlendirmek ve karar mekanizmalarını oluşturmak için kullanılır. Koşullar arasında "VE" (&&), "VEYA" (||) gibi bağlantılar kurulmasını sağlar.
Mantıksal Operatörler Tablosu
| Operatör | Açıklama | Örnek Kullanım | Sonuç |
|---|---|---|---|
&& | VE (Tüm koşullar doğruysa doğru) | x > 5 && y < 10 | x, 5’ten büyük VE y, 10’dan küçükse true |
|| | VEYA (Koşullardan biri doğruysa) | x > 5 || y < 10 | x, 5’ten büyük VEYA y, 10’dan küçükse true |
! | DEĞİL (Koşulun tersini alır) | !(x > 5) | x, 5’ten büyük DEĞİLSE true |
Mantıksal Operatörlerle Örnekler
Örnek 1: İki Sensör Değerine Göre LED Kontrolü
int sensor1 = A0;
int sensor2 = A1;
int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
int deger1 = analogRead(sensor1);
int deger2 = analogRead(sensor2);
// Her iki sensör de belirli bir aralıkta ise LED yansın
if (deger1 > 500 && deger2 < 300) {
digitalWrite(ledPin, HIGH); // LED yanar
} else {
digitalWrite(ledPin, LOW); // LED söner
}
delay(1000);
}
Örnek 2: VEYA Operatörü ile Alarm Sistemi
int motionSensor = 2;
int smokeSensor = 3;
int alarmPin = 13;
void setup() {
pinMode(motionSensor, INPUT);
pinMode(smokeSensor, INPUT);
pinMode(alarmPin, OUTPUT);
}
void loop() {
int motion = digitalRead(motionSensor);
int smoke = digitalRead(smokeSensor);
// Hareket algılandı VEYA duman algılandıysa alarm çalışır
if (motion == HIGH || smoke == HIGH) {
digitalWrite(alarmPin, HIGH); // Alarm çalar
} else {
digitalWrite(alarmPin, LOW); // Alarm durur
}
delay(500);
}
3. Eşitlikler ve Karşılaştırma Operatörleri
Eşitlik ifadeleri, iki değerin birbiriyle ilişkisini kontrol etmek için kullanılır. Bu operatörler, karar verme mekanizmalarının temelidir.
Eşitlik Operatörleri Tablosu
| Operatör | Açıklama | Örnek Kullanım | Sonuç |
|---|---|---|---|
== | İki değerin eşit olup olmadığını kontrol eder. | x == y | x ve y eşitse true |
!= | İki değerin eşit olmadığını kontrol eder. | x != y | x ve y eşit değilse true |
> | Soldaki değer sağdakinden büyükse doğru döner. | x > y | x, y’den büyükse true |
< | Soldaki değer sağdakinden küçükse doğru döner. | x < y | x, y’den küçükse true |
>= | Soldaki değer sağdakine büyük veya eşitse doğru döner. | x >= y | x, y’den büyük veya eşitse true |
<= | Soldaki değer sağdakine küçük veya eşitse doğru döner. | x <= y | x, y’den küçük veya eşitse true |
Eşitliklerle Örnek
Örnek: Sıcaklık Kontrolü
int tempSensor = A0;
int led = 13;
void setup() {
pinMode(led, OUTPUT);
Serial.begin(9600);
}
void loop() {
int sensorValue = analogRead(tempSensor);
int temperature = map(sensorValue, 0, 1023, -40, 125);
if (temperature == 25) { // Sıcaklık 25 derece ise
digitalWrite(led, HIGH); // LED yanar
} else {
digitalWrite(led, LOW); // LED söner
}
Serial.print("Temperature: ");
Serial.println(temperature);
delay(1000);
}Bu yazıda, Arduino'da operatörleri matematiksel ve mantıksal olarak iki gruba ayırdık ve ayrıca eşitlik ifadelerini detaylı şekilde ele aldık. Her başlık için tablolar, açıklamalar ve örnekler sunarak konuyu pekiştirdik.

Bu Gönderiye Yorum Yapılmamış