Driver for a binary on/off presence device

Dependents:   mbed-IBooth-ETH

Committer:
andcor02
Date:
Wed Feb 11 12:36:27 2015 +0000
Revision:
7:f12e18827f3e
Parent:
1:9d2b641a9280
Working Set for long distance door

Who changed what in which revision?

UserRevisionLine numberNew contents of line
erigow01 0:21320a151be0 1 /*
andcor02 1:9d2b641a9280 2 presence.cpp - presence sensor library
erigow01 0:21320a151be0 3 Developed by Andrea Corrado & Eric Gowland
erigow01 0:21320a151be0 4
erigow01 0:21320a151be0 5 Connect to a hardware device that is boolean present/not present. Such as PIR or Rangefinder with appropriate signalling.
erigow01 0:21320a151be0 6 Also drives LED as presence indicator.
erigow01 0:21320a151be0 7 */
erigow01 0:21320a151be0 8
erigow01 0:21320a151be0 9 #ifndef MBED_PIR_H
erigow01 0:21320a151be0 10 #define MBED_PIR_H
erigow01 0:21320a151be0 11
erigow01 0:21320a151be0 12 #include "mbed.h"
erigow01 0:21320a151be0 13
andcor02 1:9d2b641a9280 14 class presence{
erigow01 0:21320a151be0 15
erigow01 0:21320a151be0 16 public:
erigow01 0:21320a151be0 17
andcor02 1:9d2b641a9280 18 presence(PinName pin, bool true_on_rise, int debounce_time_ms);
erigow01 0:21320a151be0 19 bool isPresent();
erigow01 0:21320a151be0 20
erigow01 0:21320a151be0 21 private:
erigow01 0:21320a151be0 22 InterruptIn _myint;
erigow01 0:21320a151be0 23 DigitalOut _led1;
erigow01 0:21320a151be0 24 bool _detection;
erigow01 0:21320a151be0 25 bool _true_on_rise;
erigow01 0:21320a151be0 26 int debounce_ms;
erigow01 0:21320a151be0 27 Timer debounce_timer;
erigow01 0:21320a151be0 28 void presence_interrupt_on();
erigow01 0:21320a151be0 29 void presence_interrupt_off();
erigow01 0:21320a151be0 30
erigow01 0:21320a151be0 31 };
erigow01 0:21320a151be0 32
erigow01 0:21320a151be0 33 #endif