Added Temperature board driver

This commit is contained in:
Emanuele Trabattoni
2025-07-12 16:11:05 +02:00
parent e4d28b55cb
commit 1ad98799b4
3 changed files with 204 additions and 11 deletions

47
lib/TEMP/R4DCB08_Driver.h Normal file
View File

@@ -0,0 +1,47 @@
#pragma once
#include <DebugLog.h>
#include <RS485_Driver.h>
namespace drivers
{
class R4DCB08
{
public:
enum tempCh
{
T1,
T2,
T3,
T4,
T5,
T6,
T7,
T8,
T_MAX
};
const uint8_t maxRetries = 5;
const uint16_t REG_TEMP = 0x0000;
const uint16_t REG_TEMPCORR = 0x0008;
public:
R4DCB08(drivers::MODBUS &bus, const uint8_t address);
~R4DCB08();
const float getTemp(const uint8_t ch);
const std::vector<float> getTempAll();
void setCorrection(std::vector<float> corr);
std::vector<float> getCorrection();
const uint8_t getNum();
private:
const uint8_t m_address;
uint8_t m_sensors;
MODBUS &m_bus;
};
}