Added basic calibration framework: pending servo integration and tying of encoders.

This commit is contained in:
2025-12-28 20:52:11 -06:00
parent 2a79df3050
commit b43c918c57
7 changed files with 398 additions and 178 deletions

25
include/calibration.hpp Normal file
View File

@@ -0,0 +1,25 @@
#ifndef CALIBRATION_H
#define CALIBRATION_H
#include <atomic>
#include "encoder.hpp"
class Calibration {
public:
void init();
void beginDownwardCalib() {startTicks = topEnc.getCount();}
bool completeCalib();
int32_t convertToTicks(int8_t steps10);
bool getCalibrated() {return calibrated;}
void clearCalibrated();
Calibration(Encoder& enc):topEnc(enc) {};
private:
std::atomic<bool> calibrated;
std::atomic<int32_t> UpMinusDownTicks;
int32_t startTicks;
Encoder& topEnc;
};
extern Calibration calib;
#endif