mirror of
https://github.com/gunner47/GyverLamp.git
synced 2025-08-08 09:20:59 +03:00
add
This commit is contained in:
@@ -107,7 +107,7 @@ boolean dawnFlag = false;
|
|||||||
long thisTime;
|
long thisTime;
|
||||||
boolean manualOff = false;
|
boolean manualOff = false;
|
||||||
|
|
||||||
byte currentMode = 0;
|
int8_t currentMode = 0;
|
||||||
boolean loadingFlag = true;
|
boolean loadingFlag = true;
|
||||||
boolean ONflag = true;
|
boolean ONflag = true;
|
||||||
uint32_t eepromTimer;
|
uint32_t eepromTimer;
|
||||||
@@ -116,6 +116,8 @@ boolean settChanged = false;
|
|||||||
// Безумие 3D, Облака 3D, Лава 3D, Плазма 3D, Радуга 3D,
|
// Безумие 3D, Облака 3D, Лава 3D, Плазма 3D, Радуга 3D,
|
||||||
// Павлин 3D, Зебра 3D, Лес 3D, Океан 3D,
|
// Павлин 3D, Зебра 3D, Лес 3D, Океан 3D,
|
||||||
|
|
||||||
|
unsigned char matrixValue[8][16];
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
ESP.wdtDisable();
|
ESP.wdtDisable();
|
||||||
//ESP.wdtEnable(WDTO_8S);
|
//ESP.wdtEnable(WDTO_8S);
|
||||||
@@ -129,7 +131,7 @@ void setup() {
|
|||||||
randomSeed(analogRead(0)); // пинаем генератор случайных чисел
|
randomSeed(analogRead(0)); // пинаем генератор случайных чисел
|
||||||
touch.setStepTimeout(100);
|
touch.setStepTimeout(100);
|
||||||
touch.setClickTimeout(500);
|
touch.setClickTimeout(500);
|
||||||
|
|
||||||
Serial.begin(115200);
|
Serial.begin(115200);
|
||||||
|
|
||||||
// WI-FI
|
// WI-FI
|
||||||
@@ -182,7 +184,7 @@ void setup() {
|
|||||||
alarm[i].time = eeGetInt(5 * i + 50 + 1);
|
alarm[i].time = eeGetInt(5 * i + 50 + 1);
|
||||||
}
|
}
|
||||||
dawnMode = EEPROM.read(100);
|
dawnMode = EEPROM.read(100);
|
||||||
currentMode = EEPROM.read(101);
|
currentMode = (int8_t)EEPROM.read(101);
|
||||||
|
|
||||||
// отправляем настройки
|
// отправляем настройки
|
||||||
sendCurrent();
|
sendCurrent();
|
||||||
@@ -192,7 +194,8 @@ void setup() {
|
|||||||
Udp.write(reply);
|
Udp.write(reply);
|
||||||
Udp.endPacket();
|
Udp.endPacket();
|
||||||
|
|
||||||
timeClient.begin();
|
timeClient.begin();
|
||||||
|
memset(matrixValue, 0, sizeof(matrixValue));
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
|
@@ -27,6 +27,13 @@ void buttonTick() {
|
|||||||
settChanged = true;
|
settChanged = true;
|
||||||
eepromTimer = millis();
|
eepromTimer = millis();
|
||||||
}
|
}
|
||||||
|
if (ONflag && touch.isTriple()) {
|
||||||
|
if (--currentMode < 0) currentMode = 0;
|
||||||
|
FastLED.setBrightness(modes[currentMode].brightness);
|
||||||
|
loadingFlag = true;
|
||||||
|
settChanged = true;
|
||||||
|
eepromTimer = millis();
|
||||||
|
}
|
||||||
|
|
||||||
if (ONflag && touch.isHolded()) {
|
if (ONflag && touch.isHolded()) {
|
||||||
brightDirection = !brightDirection;
|
brightDirection = !brightDirection;
|
||||||
|
@@ -35,7 +35,6 @@ void fadePixel(byte i, byte j, byte step) { // новый фейдер
|
|||||||
// -------------------------------------- огонь ---------------------------------------------
|
// -------------------------------------- огонь ---------------------------------------------
|
||||||
// эффект "огонь"
|
// эффект "огонь"
|
||||||
#define SPARKLES 1 // вылетающие угольки вкл выкл
|
#define SPARKLES 1 // вылетающие угольки вкл выкл
|
||||||
unsigned char matrixValue[8][16];
|
|
||||||
unsigned char line[WIDTH];
|
unsigned char line[WIDTH];
|
||||||
int pcnt = 0;
|
int pcnt = 0;
|
||||||
|
|
||||||
@@ -67,9 +66,8 @@ const unsigned char hueMask[8][16] PROGMEM = {
|
|||||||
void fireRoutine() {
|
void fireRoutine() {
|
||||||
if (loadingFlag) {
|
if (loadingFlag) {
|
||||||
loadingFlag = false;
|
loadingFlag = false;
|
||||||
FastLED.clear();
|
//FastLED.clear();
|
||||||
generateLine();
|
generateLine();
|
||||||
memset(matrixValue, 0, sizeof(matrixValue));
|
|
||||||
}
|
}
|
||||||
if (pcnt >= 100) {
|
if (pcnt >= 100) {
|
||||||
shiftUp();
|
shiftUp();
|
||||||
@@ -123,7 +121,7 @@ void drawFrame(int pcnt) {
|
|||||||
- pgm_read_byte(&(valueMask[y][newX]));
|
- pgm_read_byte(&(valueMask[y][newX]));
|
||||||
|
|
||||||
CRGB color = CHSV(
|
CRGB color = CHSV(
|
||||||
modes[1].scale + pgm_read_byte(&(hueMask[y][newX])), // H
|
modes[1].scale * 2.5 + pgm_read_byte(&(hueMask[y][newX])), // H
|
||||||
255, // S
|
255, // S
|
||||||
(uint8_t)max(0, nextv) // V
|
(uint8_t)max(0, nextv) // V
|
||||||
);
|
);
|
||||||
@@ -148,7 +146,7 @@ void drawFrame(int pcnt) {
|
|||||||
uint8_t newX = x;
|
uint8_t newX = x;
|
||||||
if (x > 15) newX = x - 15;
|
if (x > 15) newX = x - 15;
|
||||||
CRGB color = CHSV(
|
CRGB color = CHSV(
|
||||||
modes[1].scale + pgm_read_byte(&(hueMask[0][newX])), // H
|
modes[1].scale * 2.5 + pgm_read_byte(&(hueMask[0][newX])), // H
|
||||||
255, // S
|
255, // S
|
||||||
(uint8_t)(((100.0 - pcnt) * matrixValue[0][newX] + pcnt * line[newX]) / 100.0) // V
|
(uint8_t)(((100.0 - pcnt) * matrixValue[0][newX] + pcnt * line[newX]) / 100.0) // V
|
||||||
);
|
);
|
||||||
|
Reference in New Issue
Block a user