RoboidControl-cpp/Encoder.h
Pascal Serrarens 189ea6c689 Initial commit
2023-11-06 14:24:18 +01:00

24 lines
445 B
C++

#pragma once
class Encoder {
public:
Encoder();
Encoder(unsigned char pin, unsigned char transitionsPerRotation);
float GetRotationsPerSecond();
void ResetDistance();
float GetRotationDistance();
void Update(float timeStep);
protected:
static void InterruptHandler();
static volatile unsigned char transitionCount;
unsigned char transitionsPerRotation;
float rps;
float distance; // this is direction agnostic
};