Resident Community management
Dependencies: HCSR04 Servo mbed
main.cpp@0:2d3a72735265, 2018-09-18 (annotated)
- Committer:
- Albinarackal
- Date:
- Tue Sep 18 03:17:27 2018 +0000
- Revision:
- 0:2d3a72735265
- Child:
- 1:054435f5db1c
Resident Community management first commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Albinarackal | 0:2d3a72735265 | 1 | #include "mbed.h" |
Albinarackal | 0:2d3a72735265 | 2 | #include "HCSR04.h" |
Albinarackal | 0:2d3a72735265 | 3 | #include "Servo.h" |
Albinarackal | 0:2d3a72735265 | 4 | |
Albinarackal | 0:2d3a72735265 | 5 | DigitalIn PIR(D4); |
Albinarackal | 0:2d3a72735265 | 6 | AnalogIn LDR(A0); |
Albinarackal | 0:2d3a72735265 | 7 | AnalogIn Gas(A1); |
Albinarackal | 0:2d3a72735265 | 8 | |
Albinarackal | 0:2d3a72735265 | 9 | |
Albinarackal | 0:2d3a72735265 | 10 | Serial pc(USBTX,USBRX); |
Albinarackal | 0:2d3a72735265 | 11 | Serial esp_serial(PA_13,PA_14); |
Albinarackal | 0:2d3a72735265 | 12 | |
Albinarackal | 0:2d3a72735265 | 13 | int val,ldr_val,gas_val; |
Albinarackal | 0:2d3a72735265 | 14 | int dist; |
Albinarackal | 0:2d3a72735265 | 15 | |
Albinarackal | 0:2d3a72735265 | 16 | HCSR04 ultrasonic(D9,D7); //trigger,echo |
Albinarackal | 0:2d3a72735265 | 17 | Servo servo(D14); |
Albinarackal | 0:2d3a72735265 | 18 | |
Albinarackal | 0:2d3a72735265 | 19 | int main() |
Albinarackal | 0:2d3a72735265 | 20 | { |
Albinarackal | 0:2d3a72735265 | 21 | pc.baud(9600); |
Albinarackal | 0:2d3a72735265 | 22 | esp_serial.baud(115200); |
Albinarackal | 0:2d3a72735265 | 23 | pc.printf("begin"); |
Albinarackal | 0:2d3a72735265 | 24 | |
Albinarackal | 0:2d3a72735265 | 25 | while(1) { |
Albinarackal | 0:2d3a72735265 | 26 | |
Albinarackal | 0:2d3a72735265 | 27 | val = PIR.read(); |
Albinarackal | 0:2d3a72735265 | 28 | if(val==1) { |
Albinarackal | 0:2d3a72735265 | 29 | |
Albinarackal | 0:2d3a72735265 | 30 | pc.printf("Motion Detected\n"); |
Albinarackal | 0:2d3a72735265 | 31 | dist = ultrasonic.distance(1); |
Albinarackal | 0:2d3a72735265 | 32 | pc.printf("the distance is %d cm\n",dist); |
Albinarackal | 0:2d3a72735265 | 33 | esp_serial.printf("U"); |
Albinarackal | 0:2d3a72735265 | 34 | esp_serial.printf("%d",dist); |
Albinarackal | 0:2d3a72735265 | 35 | esp_serial.putc('\0'); |
Albinarackal | 0:2d3a72735265 | 36 | |
Albinarackal | 0:2d3a72735265 | 37 | if (dist>5.0) { |
Albinarackal | 0:2d3a72735265 | 38 | servo.position(180); |
Albinarackal | 0:2d3a72735265 | 39 | wait(5); |
Albinarackal | 0:2d3a72735265 | 40 | servo.position(0); |
Albinarackal | 0:2d3a72735265 | 41 | } |
Albinarackal | 0:2d3a72735265 | 42 | |
Albinarackal | 0:2d3a72735265 | 43 | } else { |
Albinarackal | 0:2d3a72735265 | 44 | pc.printf("Motion ended\n"); |
Albinarackal | 0:2d3a72735265 | 45 | |
Albinarackal | 0:2d3a72735265 | 46 | } |
Albinarackal | 0:2d3a72735265 | 47 | |
Albinarackal | 0:2d3a72735265 | 48 | |
Albinarackal | 0:2d3a72735265 | 49 | |
Albinarackal | 0:2d3a72735265 | 50 | ldr_val = LDR.read_u16(); |
Albinarackal | 0:2d3a72735265 | 51 | |
Albinarackal | 0:2d3a72735265 | 52 | pc.printf("ldr: %d\n",ldr_val); |
Albinarackal | 0:2d3a72735265 | 53 | esp_serial.printf("L"); |
Albinarackal | 0:2d3a72735265 | 54 | esp_serial.printf("%d",ldr_val); |
Albinarackal | 0:2d3a72735265 | 55 | esp_serial.putc('\0'); |
Albinarackal | 0:2d3a72735265 | 56 | wait(5); |
Albinarackal | 0:2d3a72735265 | 57 | |
Albinarackal | 0:2d3a72735265 | 58 | |
Albinarackal | 0:2d3a72735265 | 59 | gas_val = Gas.read_u16(); |
Albinarackal | 0:2d3a72735265 | 60 | pc.printf("gas: %d\n",gas_val); |
Albinarackal | 0:2d3a72735265 | 61 | esp_serial.printf("G"); |
Albinarackal | 0:2d3a72735265 | 62 | esp_serial.printf("%d",gas_val); |
Albinarackal | 0:2d3a72735265 | 63 | esp_serial.putc('\0'); |
Albinarackal | 0:2d3a72735265 | 64 | } |
Albinarackal | 0:2d3a72735265 | 65 | } |