added class Pump
This commit is contained in:
+14
-2
@@ -11,6 +11,14 @@ class Pump {
|
||||
LowFlow,
|
||||
Both
|
||||
};
|
||||
|
||||
enum Status : uint8_t {
|
||||
Off,
|
||||
On,
|
||||
Standby,
|
||||
Failure
|
||||
};
|
||||
|
||||
typedef void (*ErrorFunction)(Error);
|
||||
|
||||
Pump(uint8_t pumpPin, uint8_t pressurePin, uint8_t flowPin);
|
||||
@@ -29,18 +37,22 @@ class Pump {
|
||||
void calculatePressure();
|
||||
void calculateFlow();
|
||||
void checkErrors();
|
||||
void controlPump();
|
||||
|
||||
void setStatus(Status status);
|
||||
|
||||
Status lastStatus = Status::Off;
|
||||
Status currentStatus = Status::Off;
|
||||
Error error = Error::None;
|
||||
ErrorFunction errorFunction = nullptr;
|
||||
|
||||
bool pumpState = false;
|
||||
|
||||
uint8_t pumpPin;
|
||||
uint8_t pressurePin;
|
||||
uint8_t flowPin;
|
||||
uint8_t delayLoopMs = 20;
|
||||
|
||||
uint16_t flowCounter = 0;
|
||||
uint16_t pressure = 0;
|
||||
|
||||
uint32_t lastMillisLoop = 0;
|
||||
uint32_t lastPressureCalculation = 0;
|
||||
|
||||
Reference in New Issue
Block a user