positive or negative pulse width counter
Revision 1:d37d6388c179, committed 2013-07-11
- Comitter:
- komaida424
- Date:
- Thu Jul 11 19:15:42 2013 +0000
- Parent:
- 0:89bd4ad6027d
- Commit message:
- namechange from PulseCounter to PulseWidthCounter
Changed in this revision
diff -r 89bd4ad6027d -r d37d6388c179 PulseCounter.cpp --- a/PulseCounter.cpp Wed Jul 10 15:24:37 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -#include "mbed.h" -#include "InterruptIn.h" -#include "PulseCounter.h" - -PulseCounter::PulseCounter(PinName _interrupt,bool positive=true) : interrupt(_interrupt) //constructa -{ - if ( positive ) - { interrupt.rise(this,&PulseCounter::start); - interrupt.fall(this,&PulseCounter::stop); - } - else - { interrupt.fall(this,&PulseCounter::start); - interrupt.rise(this,&PulseCounter::stop); - } -} - -void PulseCounter::start() -{ - _time.reset(); - _time.start(); -} - -void PulseCounter::stop() -{ - _time.stop(); - count = _time.read_us(); -} \ No newline at end of file
diff -r 89bd4ad6027d -r d37d6388c179 PulseCounter.h --- a/PulseCounter.h Wed Jul 10 15:24:37 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -#ifndef PULSECOUNTER_H -#define PULSECOUNTER_H -#define POSITIVE true -#define NEGATIVE false - -#include "mbed.h" - -class PulseCounter -{ -private: - Timer _time; - void start(); - void stop(); - InterruptIn interrupt; - -public: - // Timer time; - PulseCounter(PinName,bool); - - int count; -}; -#endif \ No newline at end of file
diff -r 89bd4ad6027d -r d37d6388c179 PulseWidthCounter.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PulseWidthCounter.cpp Thu Jul 11 19:15:42 2013 +0000 @@ -0,0 +1,27 @@ +#include "mbed.h" +#include "InterruptIn.h" +#include "PulseWidthCounter.h" + +PulseWidthCounter::PulseWidthCounter(PinName _interrupt,bool positive=true) : interrupt(_interrupt) //constructa +{ + if ( positive ) + { interrupt.rise(this,&PulseWidthCounter::start); + interrupt.fall(this,&PulseWidthCounter::stop); + } + else + { interrupt.fall(this,&PulseWidthCounter::start); + interrupt.rise(this,&PulseWidthCounter::stop); + } +} + +void PulseWidthCounter::start() +{ + _time.reset(); + _time.start(); +} + +void PulseWidthCounter::stop() +{ + _time.stop(); + count = _time.read_us(); +}
diff -r 89bd4ad6027d -r d37d6388c179 PulseWidthCounter.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PulseWidthCounter.h Thu Jul 11 19:15:42 2013 +0000 @@ -0,0 +1,22 @@ +#ifndef PULSEWIDTHCOUNTER_H +#define PULSEWIDTHCOUNTER_H +#define POSITIVE true +#define NEGATIVE false + +#include "mbed.h" + +class PulseWidthCounter +{ +private: + Timer _time; + void start(); + void stop(); + InterruptIn interrupt; + +public: + // Timer time; + PulseWidthCounter(PinName,bool); + + int count; +}; +#endif \ No newline at end of file