Example using a PIR sensor
Dependencies: mbed
main.cpp@0:cc930b964211, 2014-08-15 (annotated)
- Committer:
- sam_grove
- Date:
- Fri Aug 15 23:18:16 2014 +0000
- Revision:
- 0:cc930b964211
Initial commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sam_grove | 0:cc930b964211 | 1 | |
sam_grove | 0:cc930b964211 | 2 | #include "mbed.h" |
sam_grove | 0:cc930b964211 | 3 | |
sam_grove | 0:cc930b964211 | 4 | InterruptIn motion(D2); |
sam_grove | 0:cc930b964211 | 5 | |
sam_grove | 0:cc930b964211 | 6 | int motion_detected = 0; |
sam_grove | 0:cc930b964211 | 7 | |
sam_grove | 0:cc930b964211 | 8 | void irq_handler(void) |
sam_grove | 0:cc930b964211 | 9 | { |
sam_grove | 0:cc930b964211 | 10 | motion_detected = 1; |
sam_grove | 0:cc930b964211 | 11 | } |
sam_grove | 0:cc930b964211 | 12 | |
sam_grove | 0:cc930b964211 | 13 | int main(void) |
sam_grove | 0:cc930b964211 | 14 | { |
sam_grove | 0:cc930b964211 | 15 | int cnt = 0; |
sam_grove | 0:cc930b964211 | 16 | motion.rise(&irq_handler); |
sam_grove | 0:cc930b964211 | 17 | |
sam_grove | 0:cc930b964211 | 18 | while(1) { |
sam_grove | 0:cc930b964211 | 19 | if(motion_detected) { |
sam_grove | 0:cc930b964211 | 20 | cnt++; |
sam_grove | 0:cc930b964211 | 21 | motion_detected = 0; |
sam_grove | 0:cc930b964211 | 22 | printf("Hello! I've detected %d times since reset\n", cnt); |
sam_grove | 0:cc930b964211 | 23 | } |
sam_grove | 0:cc930b964211 | 24 | } |
sam_grove | 0:cc930b964211 | 25 | } |