#include <DHT.h>
#define DHTPIN 3 // what pin we're connected to
#define DHTTYPE DHT11 // DHT 11
DHT dht(DHTPIN, DHTTYPE);
int pirPin = 2; // PIR sensor pin
int ledPin = 7; // LED pin
int buzzerPin = 8; // Buzzer pin
int pirState = LOW; // current state of the PIR sensor
int lastPirState = LOW; // previous state of the PIR sensor
void setup() {
pinMode(pirPin, INPUT);
pinMode(ledPin, OUTPUT);
pinMode(buzzerPin, OUTPUT);
Serial.begin(9600);
dht.begin();
}
void loop(){
// Read PIR sensor state
pirState = digitalRead(pirPin);
// If the PIR sensor state has changed
if (pirState != lastPirState) {
// If motion is detected
if (pirState == HIGH) {
digitalWrite(ledPin, HIGH);
digitalWrite(buzzerPin, HIGH);
delay(500);
digitalWrite(buzzerPin, LOW);
Serial.println("Motion detected!");
} else {
digitalWrite(ledPin, LOW);
digitalWrite(buzzerPin, LOW);
}
// Remember the PIR sensor state for next time
lastPirState = pirState;
}
// Read temperature and humidity
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
// Print temperature and humidity to serial monitor
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print("% Temperature: ");
Serial.print(temperature);
Serial.println("°C");
delay(1000);
}
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
dht1:VCC
dht1:SDA
dht1:NC
dht1:GND
led1:A
led1:C
bz1:1
bz1:2