Read RPM each 100 cycles
This commit is contained in:
parent
7ee090043a
commit
f761d3349e
23
src/main.cpp
23
src/main.cpp
@ -22,6 +22,7 @@
|
||||
#define INVALID_TEMP (MAX_TEMP+MAX_TEMP) /**< Invalid temperature (on sensor failures)*/
|
||||
|
||||
#define TEMP_SENSOR_MEASURE_SERIES 5 /**< Maximum resets */
|
||||
#define FAN_RPM_READLEVEL 100
|
||||
|
||||
/******************************************************************************
|
||||
* LOCAL VARIABLES
|
||||
@ -136,12 +137,14 @@ float readTemperature(void)
|
||||
*/
|
||||
void loop()
|
||||
{
|
||||
static int i = 0;
|
||||
static int actualFanSpeedRpm = -1;
|
||||
float temp = readTemperature();
|
||||
|
||||
Serial.print(temp);
|
||||
Serial.print(";");
|
||||
|
||||
int fanSpeedPercent, actualFanSpeedRpm = 0;
|
||||
int fanSpeedPercent;
|
||||
|
||||
if (temp < MIN_TEMP) {
|
||||
fanSpeedPercent = 0;
|
||||
@ -152,7 +155,21 @@ void loop()
|
||||
}
|
||||
|
||||
#ifdef FAN_ENABLED
|
||||
if (actualFanSpeedRpm == 0)
|
||||
{
|
||||
if (i > FAN_RPM_READLEVEL)
|
||||
{
|
||||
actualFanSpeedRpm = getFanSpeedRpm();
|
||||
i = 0;
|
||||
}
|
||||
i++;
|
||||
}
|
||||
else
|
||||
{
|
||||
actualFanSpeedRpm = getFanSpeedRpm();
|
||||
i = 0;
|
||||
}
|
||||
|
||||
pixels->fill(Color(255, 0,0));
|
||||
pixels->setBrightness(actualFanSpeedRpm);
|
||||
pixels->show();
|
||||
@ -176,8 +193,4 @@ void loop()
|
||||
singleLed->fill(Color(0,128,128));
|
||||
singleLed->setBrightness(fanSpeedPercent);
|
||||
singleLed->show();
|
||||
|
||||
#ifdef FAN_ENABLED
|
||||
delay(DELAY_TIME);
|
||||
#endif
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user