Resident Community management
Dependencies: HCSR04 Servo mbed
Diff: main.cpp
- Revision:
- 0:2d3a72735265
- Child:
- 1:054435f5db1c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Tue Sep 18 03:17:27 2018 +0000 @@ -0,0 +1,65 @@ +#include "mbed.h" +#include "HCSR04.h" +#include "Servo.h" + +DigitalIn PIR(D4); +AnalogIn LDR(A0); +AnalogIn Gas(A1); + + +Serial pc(USBTX,USBRX); +Serial esp_serial(PA_13,PA_14); + +int val,ldr_val,gas_val; +int dist; + +HCSR04 ultrasonic(D9,D7); //trigger,echo +Servo servo(D14); + +int main() +{ + pc.baud(9600); + esp_serial.baud(115200); + pc.printf("begin"); + + while(1) { + + val = PIR.read(); + if(val==1) { + + pc.printf("Motion Detected\n"); + dist = ultrasonic.distance(1); + pc.printf("the distance is %d cm\n",dist); + esp_serial.printf("U"); + esp_serial.printf("%d",dist); + esp_serial.putc('\0'); + + if (dist>5.0) { + servo.position(180); + wait(5); + servo.position(0); + } + + } else { + pc.printf("Motion ended\n"); + + } + + + + ldr_val = LDR.read_u16(); + + pc.printf("ldr: %d\n",ldr_val); + esp_serial.printf("L"); + esp_serial.printf("%d",ldr_val); + esp_serial.putc('\0'); + wait(5); + + + gas_val = Gas.read_u16(); + pc.printf("gas: %d\n",gas_val); + esp_serial.printf("G"); + esp_serial.printf("%d",gas_val); + esp_serial.putc('\0'); + } + } \ No newline at end of file