Bayley Wang
/
foc-ed_in_the_bot_compact
robot
PositionSensor/PositionSensor.h
- Committer:
- bwang
- Date:
- 2017-05-04
- Revision:
- 155:7c6005933d4c
- Parent:
- 121:de10418bf2c2
- Child:
- 219:1cfd651eb2b2
File content as of revision 155:7c6005933d4c:
#ifndef __POSITIONSENSOR_H #define __POSITIONSENSOR_H class PositionSensor { public: virtual float GetMechPosition() {return 0.0f;} virtual float GetElecPosition() {return 0.0f;} virtual float GetUnlimitedElecPosition() {return 0.0f;} virtual bool IsValid() {return false;} }; class PositionSensorEncoder: public PositionSensor { public: PositionSensorEncoder(int cpr, float offset); virtual float GetMechPosition(); virtual float GetElecPosition(); virtual float GetUnlimitedElecPosition(); virtual bool IsValid(); private: InterruptIn *ZPulse; DigitalIn *ZSense; void ZeroEncoderCount(void); private: int _cpr; int _lobes; float _offset; bool _valid; float _rotations; }; #endif