Przyciemnienie nieaktywnego ustawienia led

This commit is contained in:
sieja
2025-07-13 12:45:35 +02:00
parent 2c0ddc93bc
commit 73249722e4

View File

@@ -57,6 +57,7 @@ const uint8_t ledMap[LED_COUNT] = {3, 0, 1, 8, 2, 5, 4, 7, 6};
#define ADR_NEOPXL_WATERLVL 8 #define ADR_NEOPXL_WATERLVL 8
#define ADR_NEOPXL_TANK #define ADR_NEOPXL_TANK
#define NON_ACTIVE_LED_DIVIDER 8
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
Adafruit_NeoPixel pixels(NUMPIXELS, NEOPIXEL, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixels(NUMPIXELS, NEOPIXEL, NEO_GRB + NEO_KHZ800);
@@ -124,16 +125,19 @@ void setFanSpeed (uint8_t spdInpt){
digitalWrite(PIN_SPEED_2, LOW); digitalWrite(PIN_SPEED_2, LOW);
delay(200); delay(200);
digitalWrite(PIN_SPEED_1, HIGH); digitalWrite(PIN_SPEED_1, HIGH);
delay(100);
} else if (spdInpt == 2) { } else if (spdInpt == 2) {
delay(100); delay(100);
digitalWrite(PIN_SPEED_1, LOW); digitalWrite(PIN_SPEED_1, LOW);
delay(200); delay(200);
digitalWrite(PIN_SPEED_2, HIGH); digitalWrite(PIN_SPEED_2, HIGH);
delay(100);
} else { } else {
delay(100); delay(100);
digitalWrite(PIN_SPEED_1, LOW); digitalWrite(PIN_SPEED_1, LOW);
delay(200); delay(200);
digitalWrite(PIN_SPEED_2, LOW); digitalWrite(PIN_SPEED_2, LOW);
delay(100);
} }
} }
@@ -272,6 +276,13 @@ void loop() {
display.display(); display.display();
display.setCursor(70, 20);
display.println("Dimm:");
display.setCursor(115, 20);
display.println(dimmStep);
display.display();
// DATA HAVEREST // DATA HAVEREST
lux = lightMeter.readLightLevel(); lux = lightMeter.readLightLevel();
waterLvlVal = touchRead(WTR_LVL); waterLvlVal = touchRead(WTR_LVL);
@@ -313,15 +324,15 @@ void loop() {
} }
} else if (hum >= (hygrostatVal - 5) and fanSpeedVal == 2) { } else if (hum >= (hygrostatVal - 5) and fanSpeedVal == 2) {
setFanSpeed (1); //ustaw predkość 1 zbliża sie do docelowej wartości setFanSpeed (1); //ustaw predkość 1 zbliża sie do docelowej wartości
neoPixelSpeed_1 = 4; neoPixelSpeed_1 = NON_ACTIVE_LED_DIVIDER;
neoPixelSpeed_2 = 1; neoPixelSpeed_2 = 1;
} else if (hum < hygrostatVal) { } else if (hum < hygrostatVal) {
setFanSpeed (fanSpeedVal); setFanSpeed (fanSpeedVal);
neoPixelSpeed_1 = 4; neoPixelSpeed_1 = NON_ACTIVE_LED_DIVIDER;
if (fanSpeedVal == 1){ if (fanSpeedVal == 1){
neoPixelSpeed_2 = 0; neoPixelSpeed_2 = 0;
} else { } else {
neoPixelSpeed_2 = 4; neoPixelSpeed_2 = NON_ACTIVE_LED_DIVIDER;
} }
} }
@@ -390,11 +401,11 @@ void loop() {
neoPixelWaterLvlR = 1; neoPixelWaterLvlR = 1;
neoPixelWaterLvlG = 0; //Przygotowanie pod żółty kolor jak mało wody neoPixelWaterLvlG = 0; //Przygotowanie pod żółty kolor jak mało wody
analogWrite(LED_WHT_TANK, 0); analogWrite(LED_WHT_TANK, 0);
analogWrite(LED_RED_TANK, dimmVal*4); analogWrite(LED_RED_TANK, dimmVal*NON_ACTIVE_LED_DIVIDER);
} else { } else {
neoPixelWaterLvlR = 0; neoPixelWaterLvlR = 0;
neoPixelWaterLvlG = 1; neoPixelWaterLvlG = 1;
analogWrite(LED_WHT_TANK, dimmVal*4); analogWrite(LED_WHT_TANK, dimmVal*NON_ACTIVE_LED_DIVIDER);
analogWrite(LED_RED_TANK, 0); analogWrite(LED_RED_TANK, 0);
} }
} }
@@ -413,8 +424,8 @@ void loop() {
// ################################################################# // #################################################################
// ################################################################# // #################################################################
pixels.clear(); pixels.clear();
pixels.setPixelColor(ADR_NEOPXL_SPEED_1, pixels.Color(int((neoPixelRed*dimmVal*neoPixelSwitch*neoPixelSpeed_1)/4), int((neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelSpeed_1)/4), int((neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelSpeed_1)/4))); pixels.setPixelColor(ADR_NEOPXL_SPEED_1, pixels.Color(int((neoPixelRed*dimmVal*neoPixelSwitch*neoPixelSpeed_1)/NON_ACTIVE_LED_DIVIDER), int((neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelSpeed_1)/NON_ACTIVE_LED_DIVIDER), int((neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelSpeed_1)/NON_ACTIVE_LED_DIVIDER)));
pixels.setPixelColor(ADR_NEOPXL_SPEED_2, pixels.Color(int((neoPixelRed*dimmVal*neoPixelSwitch*neoPixelSpeed_2)/4), int((neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelSpeed_2)/4), int((neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelSpeed_2)/4))); pixels.setPixelColor(ADR_NEOPXL_SPEED_2, pixels.Color(int((neoPixelRed*dimmVal*neoPixelSwitch*neoPixelSpeed_2)/NON_ACTIVE_LED_DIVIDER), int((neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelSpeed_2)/NON_ACTIVE_LED_DIVIDER), int((neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelSpeed_2)/NON_ACTIVE_LED_DIVIDER)));
pixels.setPixelColor(ADR_NEOPXL_FILTER, pixels.Color(neoPixelRed*dimmVal*neoPixelSwitch*neoPixelFilter, neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelFilter, neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelFilter)); pixels.setPixelColor(ADR_NEOPXL_FILTER, pixels.Color(neoPixelRed*dimmVal*neoPixelSwitch*neoPixelFilter, neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelFilter, neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelFilter));
pixels.setPixelColor(ADR_NEOPXL_L1, pixels.Color(neoPixelRed*dimmVal*neoPixelSwitch*neoPixelLvl_1, neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelLvl_1, neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelLvl_1)); pixels.setPixelColor(ADR_NEOPXL_L1, pixels.Color(neoPixelRed*dimmVal*neoPixelSwitch*neoPixelLvl_1, neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelLvl_1, neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelLvl_1));
pixels.setPixelColor(ADR_NEOPXL_L2, pixels.Color(neoPixelRed*dimmVal*neoPixelSwitch*neoPixelLvl_2, neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelLvl_2, neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelLvl_2)); pixels.setPixelColor(ADR_NEOPXL_L2, pixels.Color(neoPixelRed*dimmVal*neoPixelSwitch*neoPixelLvl_2, neoPixelGreen*dimmVal*neoPixelSwitch*neoPixelLvl_2, neoPixelBlue*dimmVal*neoPixelSwitch*neoPixelLvl_2));