Bu dersimizde 2 adet fonksiyon ve 4 adet komut öğreneceğiz.
Bu fonsiyonlar;
1- pinMode() : İlgili pinin giriş mi yoksa çıkış mı olduğunu tanımlamak için kullanılır. Bu fonksiyon içerisinde iki adet komut kullanılır. Bunlar INPUT ve OUTPUT komutlarıdır. Bu komutlardan INPUT ilgili pinin giriş olacağını, OUTPUT ise ilgili pinin çıkış olacağını belirtir. Arduino IDE’mizin setup() yapısı içerisinde kullanılırlar.
Örnek kullanımı aşağıdaki gibidir.
1 2 3 4 |
void setup(){ pinMode(1, INPUT); // 1 numaralı pinin giriş olduğunu belirtir. pinMode(2, OUTPUT); // 2 numaralı pinin çıkış olacağını belirtir. } |
2- digitalWrite() : Bu fonksiyonumuz ise çıkış olarak tanımladığımız pinimizin lojik olarak nasıl çıkış vereceğini tanımlamak için kullanılır. Bu fonksiyonumuzda yine iki adet komut kullanabiliriz. Bu komutlar HIGH ve LOW komutlarımızdır. HIGH komutumuz çıkışımızın lojik 1 yani +5 volt olmasını sağlar. LOW komutumuz ise çıkışımızın lojik 0 yani 0v olmasını sağlar. Fonksiyonumuz ve komutlarımızın kullanım şekli aşağıdaki gibidir.
Bu kez fonksiyonumuzu loop() yapısı içerisinde kullanacağız:
1 2 3 4 |
void loop(){ digitalWrite(2, HIGH); // 2 numaralı pinimizi lojik 1 (+5v) yaptık digitalWrite(2, LOW); // 2 numaralı pinimizi lojik 0 (0v) yaptık } |
Şimdi LED yakma uygulamamızın kodlarını yazalım:
1 2 3 4 5 6 7 |
void setup(){ pinMode(2, OUTPUT); // Arduino 2 numaralı pinini çıkış olarak ayarla } void loop(){ digitalWrite(2, HIGH); // Arduino 2 numaralı pinini lojik 1 (+5v) yap } |
Devre şemamız ise aşağıdaki gibi olacaktır;
Merhabalar
Ben aracımın beyninde kontak acildiginda ateslemeye puskurtme yapan komutun calismamasi sebebiyle ardiuno ile 500ms ile bir komutla puskurtme yapmak istiyorum role kullanarak yapacagim fakat nasil bir komut yazacagimi cikartamiyorum talebin şu şekilde olacak sadece aracin kontagi acildiginda puskurt500ms her kontak acıldiginda 1 sefer yapacak simdiden tesekkurederim
Yalnızca 1 kez çalışacak kodları setup() fonksiyonu içerisine yazabilirsiniz. Aşağıda verdiğim kodu arduinoya yükleyin. Röleyi arduinonun 2 numaralı dijital çıkışına bağlayın. Arduino beslemesini kontağa bağlayın. Böylelikle kontağı çevirdiğinizde 500ms süre ile röle aktif olur, 500ms sonra röle pasif hale geçer.
void setup() {
pinMode(2,OUTPUT); // Arduino'nun 2 nolu pinini çıkış olarak ayarladık
delay(10); // 10 ms kadar bekle
digitalWrite(2, HIGH); // 2 nolu dijital çıkışı aktif et
delay(500); // 500ms bekle
digitalWrite(2, LOW); // 2 nolu dijital çıkışı pasif et
}
void loop(){
}