#define ECHO_PIN 4
#define TRIG_PIN 3
#include <LiquidCrystal_I2C.h>
#define I2C_ADDR 0x27
#define LCD_COLUMNS 20
#define LCD_LINES 4
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
int inputPin = 2; // hareket sensörü sinyal pini
int pirState = LOW; // hareket algılama başlangıç durumu
int val = 0; // pinden gelen veri
int buzzerpin = 10; //buzzer pwm pini
int led = 13;
void setup() {
pinMode(inputPin, INPUT);
pinMode(buzzerpin, OUTPUT);
pinMode(led, OUTPUT);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(5, INPUT_PULLUP);
Serial.begin(9600);
pinMode(7, INPUT_PULLUP);
pinMode(6, INPUT_PULLUP);
lcd.init();
lcd.backlight();
}
float readDistanceCM() {
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
int duration = pulseIn(ECHO_PIN, HIGH);
return duration * 0.034 / 2;
}
void loop(){
b:
c:
float distance = readDistanceCM();
int deger;
deger = digitalRead(6);
val = digitalRead(inputPin);
if(deger==1)
{
lcd.setCursor(0, 1);
lcd.print("Alarm calisiyor");
if (val == HIGH ) {
lcd.setCursor(0, 0);
lcd.print("evde biri var !");
beep(500);
digitalWrite(led, HIGH);
delay(500);
if(deger==1){
goto c;
}
else
{
goto b;
}
}
if( distance > 100)
{
beep(500);
digitalWrite(led, HIGH);
lcd.setCursor(0, 0);
lcd.print("pencere acik!");
if(deger==1){
goto c;
}
else
{
goto b;
}
}
else{
digitalWrite(buzzerpin, HIGH); // alarmı kapat
digitalWrite(led, LOW);
delay(150);
}
if (val == LOW) {
if( distance<100)
lcd.setCursor(0, 0);
lcd.print("Problem yok ");
}
}
else
{
lcd.clear();
lcd.setCursor(0, 1);
lcd.print("Alarm kapali ");
delay(1000);
digitalWrite(buzzerpin, HIGH); // alarmı kapat
digitalWrite(led, LOW);
}
}
void beep(unsigned char delayms){
analogWrite(10, 255);
delay(delayms);
analogWrite(10, 150);
delay(delayms);
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
pir1:VCC
pir1:OUT
pir1:GND
led1:A
led1:C
bz1:1
bz1:2
ultrasonic1:VCC
ultrasonic1:TRIG
ultrasonic1:ECHO
ultrasonic1:GND
sw1:1
sw1:2
sw1:3
lcd1:GND
lcd1:VCC
lcd1:SDA
lcd1:SCL