/** \File SingleAxis.cpp * \copyright (c) 2025 len0rd * \date 2025-01-14 */ #include "SingleAxis.hpp" LinearSingleAxis::LinearSingleAxis(uint8_t analogPin) : m_pin{analogPin}, m_cal{ .min = 0, .max = 1 << 10, } {} uint16_t LinearSingleAxis::readRaw() { return analogRead(m_pin); } uint8_t LinearSingleAxis::readPercent() { return map(readRaw(), m_cal.min, m_cal.max, 0, 100); } void LinearSingleAxis::applyCalibration(const LinearAnalogCalibration& cal) { m_cal = cal; }