Jorge Martin Beltran Avila
/
SensorPIR
PIR SENSOR HCSR501
SensorPIR.cpp@0:820c81f96055, 2015-12-01 (annotated)
- Committer:
- Jorge_Beltran
- Date:
- Tue Dec 01 23:45:42 2015 +0000
- Revision:
- 0:820c81f96055
PIR Sensor HCSR 501
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jorge_Beltran | 0:820c81f96055 | 1 | #include "SensorPIR.h" |
Jorge_Beltran | 0:820c81f96055 | 2 | |
Jorge_Beltran | 0:820c81f96055 | 3 | /*Defines*/ |
Jorge_Beltran | 0:820c81f96055 | 4 | Serial UARTPIR(USBTX, USBRX); |
Jorge_Beltran | 0:820c81f96055 | 5 | DigitalOut dout(LED1); |
Jorge_Beltran | 0:820c81f96055 | 6 | DigitalIn enable1(D0); |
Jorge_Beltran | 0:820c81f96055 | 7 | //DigitalIn enable2(D1); |
Jorge_Beltran | 0:820c81f96055 | 8 | //DigitalIn enable3(D2); |
Jorge_Beltran | 0:820c81f96055 | 9 | //DigitalIn enable4(D3); |
Jorge_Beltran | 0:820c81f96055 | 10 | |
Jorge_Beltran | 0:820c81f96055 | 11 | /*Functions*/ |
Jorge_Beltran | 0:820c81f96055 | 12 | int GetPersonStatus(int RoomPrescence) { |
Jorge_Beltran | 0:820c81f96055 | 13 | bool print = 0; |
Jorge_Beltran | 0:820c81f96055 | 14 | bool RoomStatus = 0; |
Jorge_Beltran | 0:820c81f96055 | 15 | UARTPIR.baud(115200); |
Jorge_Beltran | 0:820c81f96055 | 16 | wait(2); //Wait for sensor to take snap shot of still room |
Jorge_Beltran | 0:820c81f96055 | 17 | |
Jorge_Beltran | 0:820c81f96055 | 18 | switch(RoomPrescence) |
Jorge_Beltran | 0:820c81f96055 | 19 | { |
Jorge_Beltran | 0:820c81f96055 | 20 | case 1: |
Jorge_Beltran | 0:820c81f96055 | 21 | if(enable1==1 /*|| enable2==1 || enable3==1 || enable4==1*/) |
Jorge_Beltran | 0:820c81f96055 | 22 | { |
Jorge_Beltran | 0:820c81f96055 | 23 | RoomStatus = 1; |
Jorge_Beltran | 0:820c81f96055 | 24 | dout=1; |
Jorge_Beltran | 0:820c81f96055 | 25 | if(print == 0) |
Jorge_Beltran | 0:820c81f96055 | 26 | { |
Jorge_Beltran | 0:820c81f96055 | 27 | UARTPIR.printf("Presencia detectada\n\r"); |
Jorge_Beltran | 0:820c81f96055 | 28 | print = 1; |
Jorge_Beltran | 0:820c81f96055 | 29 | } |
Jorge_Beltran | 0:820c81f96055 | 30 | } |
Jorge_Beltran | 0:820c81f96055 | 31 | else |
Jorge_Beltran | 0:820c81f96055 | 32 | { |
Jorge_Beltran | 0:820c81f96055 | 33 | RoomStatus = 0; |
Jorge_Beltran | 0:820c81f96055 | 34 | dout=0; |
Jorge_Beltran | 0:820c81f96055 | 35 | if(print == 1) |
Jorge_Beltran | 0:820c81f96055 | 36 | { |
Jorge_Beltran | 0:820c81f96055 | 37 | UARTPIR.printf("Ninguna presencia detectada\n\r"); |
Jorge_Beltran | 0:820c81f96055 | 38 | print = 0; |
Jorge_Beltran | 0:820c81f96055 | 39 | } |
Jorge_Beltran | 0:820c81f96055 | 40 | } |
Jorge_Beltran | 0:820c81f96055 | 41 | break; |
Jorge_Beltran | 0:820c81f96055 | 42 | |
Jorge_Beltran | 0:820c81f96055 | 43 | case 2: |
Jorge_Beltran | 0:820c81f96055 | 44 | /*ADD NEW ROOM*/ |
Jorge_Beltran | 0:820c81f96055 | 45 | break; |
Jorge_Beltran | 0:820c81f96055 | 46 | |
Jorge_Beltran | 0:820c81f96055 | 47 | default: |
Jorge_Beltran | 0:820c81f96055 | 48 | /*Do Nothing*/ |
Jorge_Beltran | 0:820c81f96055 | 49 | break; |
Jorge_Beltran | 0:820c81f96055 | 50 | } |
Jorge_Beltran | 0:820c81f96055 | 51 | return RoomStatus; |
Jorge_Beltran | 0:820c81f96055 | 52 | } |