This is simpler and far easier to read.
This commit is contained in:
parent
484db54d89
commit
045d5a8feb
@ -12,24 +12,17 @@ void doEncoder()
|
|||||||
if (result) {
|
if (result) {
|
||||||
uint8_t speed = rotary.speed();
|
uint8_t speed = rotary.speed();
|
||||||
speed >= 10 ? inc = 5 : inc = 1;
|
speed >= 10 ? inc = 5 : inc = 1;
|
||||||
|
if (result == DIR_CCW) inc = inc * -1;
|
||||||
}
|
}
|
||||||
if (KettleController.Mode() == MANUAL) {
|
if (KettleController.Mode() == MANUAL) {
|
||||||
uint8_t KettleDuty = (uint8_t)KettleController.Power();
|
uint8_t KettleDuty = (uint8_t)KettleController.Power();
|
||||||
if (result == DIR_CW && KettleDuty < 100) {
|
KettleDuty = max(0, min((KettleDuty / inc) * inc + inc, 100));
|
||||||
KettleDuty = (KettleDuty / inc) * inc + inc;
|
|
||||||
} else if (result == DIR_CCW && KettleDuty > 0) {
|
|
||||||
KettleDuty = (KettleDuty / inc) * inc - inc;
|
|
||||||
}
|
|
||||||
KettleController.Power((double)KettleDuty);
|
KettleController.Power((double)KettleDuty);
|
||||||
|
|
||||||
} else {
|
} else if (KettleController.Mode() == AUTOMATIC) {
|
||||||
|
|
||||||
uint8_t KettleTemp = (uint8_t)KettleController.Setpoint();
|
uint8_t KettleTemp = (uint8_t)KettleController.Setpoint();
|
||||||
if (result == DIR_CW && KettleTemp < 220) {
|
KettleTemp = max(0, min((KettleTemp / inc) * inc + inc, 220));
|
||||||
KettleTemp = (KettleTemp / inc) * inc + inc;
|
|
||||||
} else if (result == DIR_CCW && KettleTemp > 0) {
|
|
||||||
KettleTemp = (KettleTemp / inc) * inc - inc;
|
|
||||||
}
|
|
||||||
KettleController.Setpoint((double)KettleTemp);
|
KettleController.Setpoint((double)KettleTemp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user