Used to read incoming PWM signals from RC channels

Dependents:   A-Quad

Committer:
KarimAzzouz
Date:
Wed Dec 19 08:06:23 2012 +0000
Revision:
0:1a57c7f88422
Child:
1:eaf70ff4df07
Working !!

Who changed what in which revision?

UserRevisionLine numberNew contents of line
KarimAzzouz 0:1a57c7f88422 1 #include "PulseIn.h"
KarimAzzouz 0:1a57c7f88422 2 #include "mbed.h"
KarimAzzouz 0:1a57c7f88422 3
KarimAzzouz 0:1a57c7f88422 4 PulseIn::PulseIn(PinName p) : _k(p)
KarimAzzouz 0:1a57c7f88422 5 {
KarimAzzouz 0:1a57c7f88422 6 _k.rise(this, &PulseIn::rise);
KarimAzzouz 0:1a57c7f88422 7 _k.fall(this, &PulseIn::fall);
KarimAzzouz 0:1a57c7f88422 8 _duration=0;
KarimAzzouz 0:1a57c7f88422 9
KarimAzzouz 0:1a57c7f88422 10 }
KarimAzzouz 0:1a57c7f88422 11
KarimAzzouz 0:1a57c7f88422 12 int PulseIn::read()
KarimAzzouz 0:1a57c7f88422 13 {
KarimAzzouz 0:1a57c7f88422 14 return _duration;
KarimAzzouz 0:1a57c7f88422 15 }
KarimAzzouz 0:1a57c7f88422 16
KarimAzzouz 0:1a57c7f88422 17 void PulseIn::rise()
KarimAzzouz 0:1a57c7f88422 18 {
KarimAzzouz 0:1a57c7f88422 19 t.start();
KarimAzzouz 0:1a57c7f88422 20 }
KarimAzzouz 0:1a57c7f88422 21
KarimAzzouz 0:1a57c7f88422 22 void PulseIn::fall()
KarimAzzouz 0:1a57c7f88422 23 {
KarimAzzouz 0:1a57c7f88422 24 t.stop();
KarimAzzouz 0:1a57c7f88422 25 _duration = t.read_us();
KarimAzzouz 0:1a57c7f88422 26 t.reset();
KarimAzzouz 0:1a57c7f88422 27 }
KarimAzzouz 0:1a57c7f88422 28