Telescope Control Library

Dependents:   PushToGo-F429

Committer:
caoyu@caoyuan9642-desktop.MIT.EDU
Date:
Mon Sep 24 19:36:48 2018 -0400
Revision:
19:fd854309cb4c
Parent:
0:6cb2eaf8b133
Fix bug in nudging with small speeds mentioned in the last commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
caoyuan9642 0:6cb2eaf8b133 1 /*
caoyuan9642 0:6cb2eaf8b133 2 * GenericAbsEncoder.h
caoyuan9642 0:6cb2eaf8b133 3 *
caoyuan9642 0:6cb2eaf8b133 4 * Interface for reading position from an absolute encoder
caoyuan9642 0:6cb2eaf8b133 5 *
caoyuan9642 0:6cb2eaf8b133 6 * Created on: 2018/2/7
caoyuan9642 0:6cb2eaf8b133 7 * Author: caoyuan9642
caoyuan9642 0:6cb2eaf8b133 8 */
caoyuan9642 0:6cb2eaf8b133 9
caoyuan9642 0:6cb2eaf8b133 10 #ifndef TELESCOPE_ABSENCODER_H_
caoyuan9642 0:6cb2eaf8b133 11 #define TELESCOPE_ABSENCODER_H_
caoyuan9642 0:6cb2eaf8b133 12
caoyuan9642 0:6cb2eaf8b133 13 #include <stdint.h>
caoyuan9642 0:6cb2eaf8b133 14 /**
caoyuan9642 0:6cb2eaf8b133 15 * Interface of a generic Absolute Encoder
caoyuan9642 0:6cb2eaf8b133 16 */
caoyuan9642 0:6cb2eaf8b133 17 template<uint32_t maxCount>
caoyuan9642 0:6cb2eaf8b133 18 class AbsEncoder
caoyuan9642 0:6cb2eaf8b133 19 {
caoyuan9642 0:6cb2eaf8b133 20 public:
caoyuan9642 0:6cb2eaf8b133 21 AbsEncoder(){
caoyuan9642 0:6cb2eaf8b133 22 }
caoyuan9642 0:6cb2eaf8b133 23 virtual ~AbsEncoder(){
caoyuan9642 0:6cb2eaf8b133 24 }
caoyuan9642 0:6cb2eaf8b133 25
caoyuan9642 0:6cb2eaf8b133 26 virtual uint32_t readPos() = 0;
caoyuan9642 0:6cb2eaf8b133 27 virtual void zero()
caoyuan9642 0:6cb2eaf8b133 28 {
caoyuan9642 0:6cb2eaf8b133 29 }
caoyuan9642 0:6cb2eaf8b133 30
caoyuan9642 0:6cb2eaf8b133 31 uint32_t getMaxCount() const
caoyuan9642 0:6cb2eaf8b133 32 {
caoyuan9642 0:6cb2eaf8b133 33 return maxCount;
caoyuan9642 0:6cb2eaf8b133 34 }
caoyuan9642 0:6cb2eaf8b133 35 };
caoyuan9642 0:6cb2eaf8b133 36
caoyuan9642 0:6cb2eaf8b133 37 #endif /* TELESCOPE_ABSENCODER_H_ */
caoyuan9642 0:6cb2eaf8b133 38
caoyuan9642 0:6cb2eaf8b133 39