Arduino IDE’de sıklıkla kullanılan Startup ve GPIO ile ilgili bazı temel fonksiyonları görelim.
GPIO, bir pini giriş, çıkış ve alternatif modlarda kullanabilmemizi sağlayan bir dahili çevre birimidir.
Startup Fonksiyonlar
setup()
- Bu fonksiyon çizimin başında çağrılır.
- Değişkenleri, pin modlarını vb. başlatmak için kullanılır.
- Her açılıştan sonra veya Arduino kartı sıfırlandığında yalnızca bir kez çalışır.
loop()
- Kurulum işlevi tamamlandığında, döngü işlevi sürekli olarak tekrar tekrar yürütülür.
GPIO Fonksiyonlar
pinMode(pin,mode)
- pin : Belirli bir modun seçildiği pin.
- mode : Fonksiyonda belirtilen pin modu. INPUT, INPUT_PULLUP veya OUTPUT olabilir.
- Bu fonksiyon, belirtilen pini Giriş (INPUT), Yukarı çekme dirençli Giriş (INPUT_PULLUP) veya Çıkış (OUTPUT) olarak davranacak şekilde yapılandırmak için kullanılır.
Örnek:
1 2 3 |
pinMode(3,INPUT); |
dijital pin 3’ü bir giriş pini olarak yapılandırır.
Daha fazla arduino örneği için Arduino Örnekleri bağlantısına tıklayın.
digitalRead(digital_pin)
- digital_pin : Okunacak dijital pin.
- Bu fonksiyon, belirtilen dijital pinden (digital_pin) dijital sinyali okumak için kullanılır.
- Arduino UNO kartında 0 ila 13 arasında 14 dijital pin bulunur.
- Fonksiyon HIGH veya LOW döndürür.
Örnek:
1 2 3 |
digitalRead(5); |
pin 5’teki değeri okur.
Daha fazla arduino örneği için Arduino Örnekleri bağlantısına tıklayın.
digitalWrite(pin,deger)
- pin : Değer yazılacak dijital pin.
- deger : HIGH veya LOW olabilir.
- Bu fonksiyon, bir dijital pine HIGH veya LOW bir değer yazmak için kullanılır.
Örnek:
1 2 3 |
digitalWrite(4, HIGH); |
pin 4’ü HIGH yapar.
Örnek: Arduino UNO’nun 13. pinine bağlı yerleşik LED’in yanıp sönmesi
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); } |
analogRead(analog_pin)
- analog_pin : Değeri okunacak analog pin.
- Bu fonksiyon, belirtilen analog pinden (analog_pin) gelen analog sinyali okumak için kullanılır.
- UNO kartı, A0 ila A5 arasında 6 ADC kanalına sahiptir.
- Fonksiyon, 0 ile 1023 arasında bir tamsayı değeri döndürür.
Örnek:
1 2 3 |
analogRead(A3); |
analog pin A3 üzerindeki değeri okur.
Daha fazla arduino örneği için Arduino Örnekleri bağlantısına tıklayın.
Örnek: Arduino’nun A1 pinine bağlı bir analog sensörden analog değeri okuma ve Arduino’nun seri monitöründe ADC değerini görüntüleme
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
void setup() { Serial.begin(9600); } void loop() { int adc_val; adc_val = analogRead(A1); Serial.print("ADC degeri : "); Serial.println(adc_val); delay(5000); } |
analogWrite(pin,deger)
- pin : Değer yazılacak analog pin.
- değer : 0 ile 255 arasında herhangi bir sayı olabilir. 0 %0 görev çevrimi ve 255 %100 görev çevrimidir.
- Bu fonksiyon, PWM dijital pinlerinde (Arduino UNO için 3,5,6,9,10,11 pinleri) PWM üretmek için kullanılır.
- değer 0 ile 255 arasında herhangi bir sayı olabilir. 0, %0 görev çevrimi ve 255 %100 görev çevrimidir.
Örnek:
1 2 3 |
analogWrite(3, 128); |
pin 3’te %50 görev döngüsüne sahip bir PWM dalgası oluşturur.
Daha fazla arduino örneği için Arduino Örnekleri bağlantısına tıklayın.
Örnek: Değişken görev döngüsüne sahip PWM dalgası üreterek Arduino’nun pin 5’ine bağlı LED’in yoğunluğunu değiştirin
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
void setup() { pinMode(5, OUTPUT); } void loop() { for(int i =0; i<256; i++) { analogWrite(5, i); delay(300); } } |
[…] Bakınız: Temel Arduino Fonksiyonları […]