zhouhang shao
/
test
test
encoder.h
- Committer:
- szh66
- Date:
- 2017-05-07
- Revision:
- 3:34a763e93423
- Parent:
- 2:b78dfa2afe92
- Child:
- 6:9f698d1b2996
File content as of revision 3:34a763e93423:
#ifndef ENCODER_H #define ENCODER_H #include "mbed.h" /* * Reset both encoders */ void resetEncoders(); /* Returns the average number of pulses across both encoders since last reset. Unit is encoder pulses; intended for straight driving only. */ int getEncoderDistance(); class Encoder { public: volatile int pulses; Encoder(PinName channelA, PinName channelB); //Reset the encoder void reset(void); //Gets pulses by directly querying the encoder. operator int() { return pulses; } private: InterruptIn channelA_; InterruptIn channelB_; int prevState_; int currState_; void encode(void); }; extern Encoder leftEncoder; #endif