
Ana Sayfa » Tüm Yazılar
Sound Detection Clap Switch

Arduino ~ Alkış ile Lamba Yakma
int alkis = 0; long algilama_araligi_baslangic = 0; long algilama_araligi = 0; boolean isik_durumu = false; void setup(){ pinMode(10, INPUT); pinMode(8, OUTPUT); } void loop(){ if(digitalRead(10) == 0){ if(alkis == 0){ algilama_araligi_baslangic = algilama_araligi = millis(); alkis++; } else if(alkis > 0 && millis() - algilama_araligi >= 49){ algilama_araligi = millis(); alkis++; } } if(millis() - algilama_araligi_baslangic >= 399){ if(alkis == 2){ if(!isik_durumu){ isik_durumu = true; digitalWrite(8, HIGH); } else if(isik_durumu){ isik_durumu = false; digitalWrite(8, LOW); } } alkis = 0; } }
TV Kumandası ile LED Kontrolü

Arduino TV Kumandası ile LED Kontrolü
IR (Kızılötesi) ile Haberleşme yapacağız.
Next Uydu alıcının kumandasını, IR alıcı olarak TSOP4838 malzemeyi kullandım.
Kumandanın;
1.ci Tuşu: "34935" kodu 2.ci Tuşu: "18615" kodu
3.ci Tuşu: "51255" kodu 4.ci Tuşu: "10455" kodu
Kırmızı Power Tuşu: "20655" kodunu gönderiyor.
Bu kumanda ilk kodu gönderiyor sonra başka bir kod gönderiyor. Bu sayede butona bir kez basılmış oluyor. Eğer sizin kumandanızda bu yoksa yazılımda değişiklik yapmanız gerekecek yoksa LED'leriniz sürekli aç kapa yapacaktır.
Kumandanın kodlarını görmek için Serial Monitör'den bakabilirsiniz.
Başka bir kumanda kullanıyorsanız benim kumanda kodlarımla değiştirmeniz gerekiyor.
NOT: Bu kullandığım kütüphane Arduino v1.0.5 versiyonu ile çalışmaktadır. Arduino v1.0.6 versiyonunda çalışmamıştır.
#include <IRremote.h> byte RECV_PIN = 2; IRrecv irrecv(RECV_PIN); decode_results results; void setup(){ Serial.begin(9600); irrecv.enableIRIn(); pinMode(3, OUTPUT); pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); } void loop(){ if(irrecv.decode(&results)){ unsigned int Gelen_Veri = results.value; switch(Gelen_Veri){ case 34935: digitalWrite(3, !digitalRead(3)); break; case 18615: digitalWrite(4, !digitalRead(4)); break; case 51255: digitalWrite(5, !digitalRead(5)); break; case 10455: digitalWrite(6, !digitalRead(6)); break; case 20655: digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); break; } Serial.println(Gelen_Veri); irrecv.resume(); } }
Download Library:
https://yadi.sk/d/9tP7A7A5eZk3P
https://yadi.sk/d/9tP7A7A5eZk3P
Ters Zaman Rölesi

Arduino Ters Zaman Rölesi
byte ROLE_1 = 2; byte ROLE_2 = 3; byte ROLE_3 = 4; byte ROLE_4 = 5; byte BUTON_1 = 8; byte BUTON_2 = 9; byte BUTON_3 = 10; byte BUTON_4 = 11; long ZAMAN = 50000; long SAYICI_1; long SAYICI_2; long SAYICI_3; long SAYICI_4; void setup(){ pinMode(BUTON_1, INPUT_PULLUP); pinMode(BUTON_2, INPUT_PULLUP); pinMode(BUTON_3, INPUT_PULLUP); pinMode(BUTON_4, INPUT_PULLUP); pinMode(ROLE_1, OUTPUT); pinMode(ROLE_2, OUTPUT); pinMode(ROLE_3, OUTPUT); pinMode(ROLE_4, OUTPUT); } void loop(){ if(digitalRead(BUTON_1) == (LOW)){ digitalWrite(ROLE_1, HIGH); SAYICI_1 = ZAMAN; } if(digitalRead(BUTON_2) == (LOW)){ digitalWrite(ROLE_2, HIGH); SAYICI_2 = ZAMAN; } if(digitalRead(BUTON_3) == (LOW)){ digitalWrite(ROLE_3, HIGH); SAYICI_3 = ZAMAN; } if(digitalRead(BUTON_4) == (LOW)){ digitalWrite(ROLE_4, HIGH); SAYICI_4 = ZAMAN; } if(SAYICI_1 != 0){ SAYICI_1 = SAYICI_1 - 1; }else{ digitalWrite(ROLE_1, LOW); } if(SAYICI_2 != 0){ SAYICI_2 = SAYICI_2 - 1; }else{ digitalWrite(ROLE_2, LOW); } if(SAYICI_3 != 0){ SAYICI_3 = SAYICI_3 - 1; }else{ digitalWrite(ROLE_3, LOW); } if(SAYICI_4 != 0){ SAYICI_4 = SAYICI_4 - 1; }else{ digitalWrite(ROLE_4, LOW); } }
HC-SR04 Ultrasonic Sensor

Arduino UNO HC-SR04 Ultrasonik Sensör
#include <NewPing.h> #define TRIGGER_PIN 12 // Ultrasonik Sesi Gönderen Pin #define ECHO_PIN 11 // Ultrasonik Sesi Algılan Pin #define MAX_DISTANCE 200 // Max. Mesafe 200cm NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); void setup(){ Serial.begin(9600); } void loop(){ delay(50); unsigned int uS = sonar.ping(); Serial.print("Ping: "); Serial.print(uS / US_ROUNDTRIP_CM); Serial.println("cm"); }
Download Library:
https://yadi.sk/d/0m7OwWhkeSEKJ










