- TCL LCD és LED TV-k
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Radeon RX 9060 XT: Ezt aztán jól meghúzták
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Bambu Lab 3D nyomtatók
- RAM topik
- Milyen digitális videókamerát?
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Fujifilm X
-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Teasüti
nagyúr
Üdv urak!
Nagy a baj.
Elkezdtem menüt faragni 1604-es karakteres lcd-re és hozzá egy utasításkezelő rutint, viszont olyan hatalmas lett (és még nincs 100% kész), hogy máris elfogyott a rom.
Nézegettem kész megoldásokat, viszont az osztálykezelés nekem kínai, így state machine-ben csináltam kézzel az összes lehetséges opciót. Nos ez zsákutca.
Kérhetnék segítséget hogy lehetne az alábbit megoldani kisebb kóddal?
Az osztályokban történő kódolás miben különbözik ettől? Azon kívül, hogy olyan bonyolult, hogy beleszagolni se tudok.
Esetleg egy iszonyú szájbarágós tutorial osztálykezelésre? Igazából még azt sem tudom mire jó ez, csak láttam, hogy ebben írtak menüket mások.Az alsó semmi extra, csak sorszámozott képernyők az LCD-n. A menu változó hivatkozik egy adott oldalra, mely tartalmat jeleníti meg. A felső funkció pedig a távirányító egy adott gombjára* (külső switch) és adott oldalra menüben (belső switch) csinál vmit: lapozás, értékadás, stb.
*pl. távirányító 1-9 számgombjai, vagy a kurzor nyilai a numerikus bill.-en vett helyei alapján 14 - balra, 16 - jobbra, 15 - OK, stb.
void menuHandler(byte button) {
if (inMenu) {
lcd_update = true;
switch (button) {
case 10:
switch (menu) {
case 81:
rtc[5] = 0;
menu++;
break;
case 82:
rtc[4] = 0;
menu++;
break;
case 83:
rtc[3] = 0;
menu++;
break;
case 84:
rtc[2] = 0;
menu++;
break;
case 85:
rtc[1] = 0;
menu++;
break;
case 86:
rtc[0] = 0;
menu = 80;
break;
case 91:
evening[3] = 0;
menu++;
break;
case 92:
evening[2] = 0;
menu++;
break;
case 93:
evening[1] = 0;
menu++;
break;
case 94:
evening[0] = 0;
menu = 90;
break;
case 101:
morning[3] = 0;
menu++;
break;
case 102:
morning[2] = 0;
menu++;
break;
case 103:
morning[1] = 0;
menu++;
break;
case 104:
morning[0] = 0;
menu = 100;
break;
}
break;
case 1:
switch (menu) {
case 81:
rtc[5] = 1;
menu++;
break;
case 82:
rtc[4] = 1;
menu++;
break;
case 83:
rtc[3] = 1;
menu++;
break;
case 84:
rtc[2] = 1;
menu++;
break;
case 85:
rtc[1] = 1;
menu++;
break;
case 86:
rtc[0] = 1;
menu = 80;
break;
case 91:
evening[3] = 0;
menu++;
break;
case 92:
evening[2] = 0;
menu++;
break;
case 93:
evening[1] = 0;
menu++;
break;
case 94:
evening[0] = 0;
menu = 90;
break;
case 101:
morning[3] = 0;
menu++;
break;
case 102:
morning[2] = 0;
menu++;
break;
case 103:
morning[1] = 0;
menu++;
break;
case 104:
morning[0] = 0;
menu = 100;
break;
}
break;
case 2:
switch (menu) {
case 81:
rtc[5] = 2;
if (rtc[4] > 3) rtc[4] = 3;
menu++;
break;
case 82:
rtc[4] = 2;
menu++;
break;
case 83:
rtc[3] = 2;
menu++;
break;
case 84:
rtc[2] = 2;
menu++;
break;
case 85:
rtc[1] = 2;
menu++;
break;
case 86:
rtc[0] = 2;
menu = 80;
break;
case 91:
evening[3] = 0;
menu++;
break;
case 92:
evening[2] = 0;
menu++;
break;
case 93:
evening[1] = 0;
menu++;
break;
case 94:
evening[0] = 0;
menu = 90;
break;
case 101:
morning[3] = 0;
menu++;
break;
case 102:
morning[2] = 0;
menu++;
break;
case 103:
morning[1] = 0;
menu++;
break;
case 104:
morning[0] = 0;
menu = 100;
break;
}
break;
case 3:
switch (menu) {
case 82:
rtc[4] = 3;
menu++;
break;
case 83:
rtc[3] = 3;
menu++;
break;
case 84:
rtc[2] = 3;
menu++;
break;
case 85:
rtc[1] = 3;
menu++;
break;
case 86:
rtc[0] = 3;
menu = 80;
break;
case 91:
evening[3] = 0;
menu++;
break;
case 92:
evening[2] = 0;
menu++;
break;
case 93:
evening[1] = 0;
menu++;
break;
case 94:
evening[0] = 0;
menu = 90;
break;
case 101:
morning[3] = 0;
menu++;
break;
case 102:
morning[2] = 0;
menu++;
break;
case 103:
morning[1] = 0;
menu++;
break;
case 104:
morning[0] = 0;
menu = 100;
break;
}
break;
case 4:
switch (menu) {
case 82:
if (rtc[5] < 2) rtc[4] = 4;
menu++;
break;
case 83:
rtc[3] = 4;
menu++;
break;
case 84:
rtc[2] = 4;
menu++;
break;
case 85:
rtc[1] = 4;
menu++;
break;
case 86:
rtc[0] = 4;
menu = 80;
break;
}
break;
case 5:
switch (menu) {
case 82:
if (rtc[5] < 2) rtc[4] = 5;
menu++;
break;
case 83:
rtc[3] = 5;
menu++;
break;
case 84:
rtc[2] = 5;
menu++;
break;
case 85:
rtc[1] = 5;
menu++;
break;
case 86:
rtc[0] = 5;
menu = 80;
break;
}
break;
case 6:
switch (menu) {
case 82:
if (rtc[5] < 2) rtc[4] = 6;
menu++;
break;
case 84:
rtc[2] = 6;
menu++;
break;
case 86:
rtc[0] = 6;
menu = 80;
break;
}
break;
case 7:
switch (menu) {
case 82:
if (rtc[5] < 2) rtc[4] = 7;
menu++;
break;
case 84:
rtc[2] = 7;
menu++;
break;
case 86:
rtc[0] = 7;
menu = 80;
break;
}
break;
case 8:
switch (menu) {
case 82:
if (rtc[5] < 2) rtc[4] = 8;
menu++;
break;
case 84:
rtc[2] = 8;
menu++;
break;
case 86:
rtc[0] = 8;
menu = 80;
break;
}
break;
case 9:
switch (menu) {
case 82:
if (rtc[5] < 2) rtc[4] = 9;
menu++;
break;
case 84:
rtc[2] = 9;
menu++;
break;
case 86:
rtc[0] = 9;
menu = 80;
break;
}
break;
case 15:
switch (menu) {
case 51:
menu = 52;
break;
case 52:
L1switch = analogRead(A1);
break;
case 53:
menu = 54;
break;
case 54:
L2switch = analogRead(A2);
break;
case 56:
L1max = 0;
L1min = 1023;
L2max = 0;
L2min = 1023;
EEPROM.put(0, L1max);
EEPROM.put(2, L1min);
EEPROM.put(10, L2max);
EEPROM.put(12, L2min);
menu = 57;
break;
default:
goto select;
break;
}
break;
case 14:
if (menu >= 20 && menu < 30) menu = 11;
else if (menu < 20) {
menu = 1;
inMenu = false;
}
if (menu >= 40 && menu < 50) menu = 12;
if (menu == 60 || menu == 61) menu = 13;
if (menu >= 70 && menu < 80) menu = 14;
if (menu > 80 && menu <= 86) {
menu--;
break;
}
if (menu > 90 && menu <= 94) {
menu--;
break;
}
switch (menu) {
case 30:
menu = 20;
EEPROM.put(4, Bmax);
break;
case 31:
menu = 21;
EEPROM.put(5, Bmin);
break;
case 32:
menu = 22;
EEPROM.put(6, standby_light);
break;
case 33:
menu = 23;
EEPROM.put(7, default_timeout);
break;
case 34:
menu = 24;
EEPROM.put(8, white);
break;
case 35:
menu = 25;
EEPROM.put(9, gamma_correction);
break;
case 50:
menu = 40;
break;
case 51:
menu = 41;
break;
case 52:
menu = 41;
EEPROM.put(14, L1switch);
break;
case 53:
menu = 42;
break;
case 54:
menu = 42;
EEPROM.put(16, L2switch);
break;
case 55:
menu = 43;
break;
case 56:
menu = 44;
break;
case 57:
menu = 44;
break;
case 64:
menu = 60;
EEPROM.put(18, lcd_light);
break;
case 63:
menu = 61;
EEPROM.put(19, lcd_maxBrightness);
break;
case 80:
setRTC();
menu = 70;
break;
case 90:
EEPROM.put(20, evening);
menu = 71;
break;
case 100:
EEPROM.put(24, morning);
menu = 72;
break;
}
break;
case 16:
select:
if (menu >= 80 && menu < 86) menu++;
if (menu >= 90 && menu < 94) menu++;
if (menu >= 100 && menu < 104) menu++;
switch (menu) {
case 9:
menu = 10;
break;
case 10:
menu = 11;
break;
case 11:
menu = 20;
break;
case 12:
menu = 40;
break;
case 13:
menu = 60;
break;
case 14:
menu = 70;
break;
case 20:
menu = 30;
break;
case 21:
menu = 31;
break;
case 22:
menu = 32;
break;
case 23:
menu = 33;
break;
case 24:
menu = 34;
break;
case 25:
menu = 35;
break;
case 40:
menu = 50;
break;
case 41:
menu = 51;
break;
case 42:
menu = 53;
break;
case 43:
menu = 55;
break;
case 44:
menu = 56;
break;
case 51:
menu = 52;
break;
case 53:
menu = 54;
break;
case 60:
menu = 64;
break;
case 61:
menu = 63;
break;
case 70:
menu = 80;
break;
case 71:
menu = 90;
break;
case 72:
menu = 100;
break;
}
break;
case 18:
if (menu > 10 && menu < 20) menu--;
if (menu >= 20 && menu <= 25) menu--;
if (menu >= 40 && menu <= 44) menu--;
if (menu == 30 && Bmax < 254) {
Bmax += 1;
if (Bmax > maxBrightness) Bmax = maxBrightness;
}
if (menu == 33 && default_timeout < 119) default_timeout++;
if (menu == 52 && L1switch < L1max) L1switch++;
if (menu == 54 && L2switch < L2max) L2switch++;
if (menu == 60 || menu == 61) menu--;
if (menu == 63 && lcd_maxBrightness < 255) lcd_maxBrightness += 5;
if (menu >= 70 && menu <= 72) menu--;
switch (menu) {
case 10:
menu = 14;
break;
case 19:
menu = 25;
break;
case 39:
menu = 44;
break;
case 31:
Bmin += 1;
if (Bmin > Bmax) Bmin = Bmax;
break;
case 32:
standby_light = true;
break;
case 34:
white = true;
break;
case 35:
gamma_correction = true;
break;
case 50:
auto_light = true;
break;
case 55:
auto_dim = true;
break;
case 59:
menu = 61;
break;
case 64:
lcd_light = true;
break;
case 69:
menu = 72;
break;
}
break;
case 12:
if (menu < 15) menu++;
if (menu >= 20 && menu <= 25) menu++;
if (menu >= 40 && menu <= 44) menu++;
if (menu == 31 && Bmin > 0) Bmin--;
if (menu == 33 && default_timeout > 10) default_timeout--;
if (menu == 52 && L1switch > L1min) L1switch--;
if (menu == 54 && L2switch > L2min) L2switch--;
if (menu == 60 || menu == 61) menu++;
if (menu == 63 && lcd_maxBrightness > 20) lcd_maxBrightness -= 5;
if (menu >= 70 && menu <= 72) menu++;
switch (menu) {
case 15:
menu = 11;
break;
case 26:
menu = 20;
break;
case 45:
menu = 40;
break;
case 30:
Bmax -= 1;
if (Bmax < Bmin) Bmax = Bmin;
break;
case 32:
standby_light = false;
break;
case 34:
white = false;
break;
case 35:
gamma_correction = false;
break;
case 50:
auto_light = false;
break;
case 55:
auto_dim = false;
break;
case 62:
menu = 60;
break;
case 64:
lcd_light = false;
break;
case 73:
menu = 70;
break;
}
break;
}
Serial.print(F("Menu: "));
Serial.println(menu);
}
}
void lcd_menu(uint16_t page) {
byte temp;
if (menu <= 80 || menu == 90 || menu == 100) {
lcd.clear();
lcd.setCursor(0, 0);
}
switch (page) {
case 0: //welcome
lcd.print(F("Stairlights v1.0"));
lcd.setCursor(0, 1);
lcd.print(F("by Istvan Kocsis"));
break;
case 1:
if (mode == 0) lcd.print(F("Standby..."));
else if (mode == 255) lcd.print(F("Adjusting..."));
else lcd.print(F("Active..."));
lcd.setCursor(0, 1);
lcd.print(F("Press OK to menu"));
break;
case 2:
if (mode == 0) lcd.print(F("Standby..."));
else if (mode == 255) lcd.print(F("Adjusting..."));
else lcd.print(F("Active..."));
lcd.setCursor(0, 1);
lcd.print(F("Press any to set"));
break;
case 3:
if (mode == 0) lcd.print(F("Standby..."));
else if (mode == 255) lcd.print(F("Adjusting..."));
else lcd.print(F("Active..."));
lcd.setCursor(0, 1);
lcd.print(F("FPS:"));
if (fps > 9) lcd.setCursor(5, 1);
else lcd.setCursor(6, 1);
lcd.print(fps);
lcd.setCursor(8, 1);
lcd.print(F("CPS:"));
lcd.print(cps);
break;
case 4:
readRTC();
lcd.print(F("Time:"));
lcd.setCursor(8, 0);
lcd.print(rtc[5]);
lcd.print(rtc[4]);
lcd.print(F(":"));
lcd.print(rtc[3]);
lcd.print(rtc[2]);
lcd.print(F(":"));
lcd.print(rtc[1]);
lcd.print(rtc[0]);
lcd.setCursor(0, 1);
lcd.print(F("FPS:"));
if (fps > 9) lcd.setCursor(5, 1);
else lcd.setCursor(6, 1);
lcd.print(fps);
lcd.setCursor(8, 1);
lcd.print(F("CPS:"));
lcd.print(cps);
break;
case 9: //inMenu
lcd.write(byte(2));
lcd.setCursor(2, 0);
lcd.print(F("to scroll"));
lcd.setCursor(0, 1);
lcd.write(byte(0));
lcd.setCursor(1, 1);
lcd.print(F(" to go back"));
break;
case 10: //inMenu
lcd.write(byte(1));
lcd.setCursor(2, 0);
lcd.print(F("or OK"));
lcd.setCursor(0, 1);
lcd.print(F("to select"));
break;
case 11: //LED settings
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LED"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("settings"));
break;
case 12: //Sensor settings
lcd.write(byte(3));
lcd.setCursor(2, 0);
lcd.print(F("Ambient light"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.print(F("sensor settings"));
break;
case 13: //LCD settings
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Display"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("settings"));
break;
case 14: //time settings
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Date/Time"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("setting"));
break;
case 20: //LED submenu
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LED max"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("brightness"));
break;
case 21: //LED submenu
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LED min"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("brightness"));
break;
case 22: //LED submenu
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LED standby"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("running light"));
break;
case 23: //LED submenu
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LED"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("timeout"));
break;
case 24: //LED submenu
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LED color"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("set"));
break;
case 25: //LED gamma
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LED gamma"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("correction"));
break;
case 30: //LED max brightness
lcd.print(F("Max brightness:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(2, 1);
lcd.print(Bmax);
break;
case 31: //LED min brightness
lcd.print(F("Min brightness:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(2, 1);
lcd.print(Bmin);
break;
case 32: //LED standby
lcd.print(F("Standby light:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(2, 1);
if (standby_light) lcd.print(F("ON"));
else lcd.print(F("OFF"));
break;
case 33: //LED timeout
lcd.print(F("LED timeout:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(2, 1);
lcd.print(default_timeout);
lcd.print(F(" sec"));
break;
case 34: //LED color
lcd.print(F("Default mode:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(2, 1);
if (white) lcd.print(F("White"));
else lcd.print(F("Color"));
break;
case 35: //LED gamma
lcd.print(F("Correction:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(2, 1);
if (gamma_correction) lcd.print(F("ON"));
else lcd.print(F("OFF"));
break;
case 40: //Sensor auto light
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Ambient light"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("activating"));
break;
case 41: //Sensor adjust
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Primary light"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("sensor"));
break;
case 42: //Sensor adjust
lcd.write(byte(3));
lcd.setCursor(1, 0);
lcd.print(F("Secondary light"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("sensor"));
break;
case 43:
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Auto dimming"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("in the dark"));
break;
case 44: //Sensor calibration
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Light sensor"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("recalibration"));
break;
case 50:
lcd.print(F("Only in dark?"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(2, 1);
if (auto_light) lcd.print(F("Auto ON"));
else lcd.print(F("Always ACTIVE"));
break;
case 51:
lcd.print(F("OK: read sensor"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(1, 1);
lcd.print(F(": to adjust"));
break;
case 52:
temp = map(L1switch, L1min, L1max, 0, 100);
lcd.print(F("Sensitivity:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
if (L1switch > 99) lcd.setCursor(2, 1);
else if (L1switch > 9) lcd.setCursor(3, 1);
else lcd.setCursor(4, 1);
lcd.print(L1switch);
if (temp < 10 ) lcd.setCursor(7, 1);
else lcd.setCursor(6, 1);
lcd.print(temp);
lcd.print(F("% of max"));
break;
case 53:
lcd.print(F("OK: read sensor"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(1, 1);
lcd.print(F(": to adjust"));
break;
case 54:
temp = map(L2switch, L2min, L2max, 0, 100);
lcd.print(F("Sensitivity:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
if (L2switch > 99) lcd.setCursor(2, 1);
else if (L2switch > 9) lcd.setCursor(3, 1);
else lcd.setCursor(4, 1);
lcd.print(L2switch);
if (temp < 10 ) lcd.setCursor(7, 1);
else lcd.setCursor(6, 1);
lcd.print(temp);
lcd.print(F("% of max"));
break;
case 55:
lcd.write(byte(2));
lcd.setCursor(2, 0);
lcd.print(F("Auto dimming"));
lcd.setCursor(0, 1);
if (auto_dim) lcd.print(F("ON: dim in dark"));
else lcd.print(F("OFF: full power"));
break;
case 56:
lcd.print(F("OK to reset"));
lcd.setCursor(0, 1);
lcd.print(F("stored values?"));
break;
case 57:
lcd.print(F("Calibration data"));
lcd.setCursor(0, 1);
lcd.print(F("cleared!"));
break;
case 60:
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LCD backlight"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("mode"));
break;
case 61:
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("LCD"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("brightness"));
break;
case 63:
lcd.print(F("Brightness:"));
lcd.setCursor(0, 1);
lcd.write(byte(2));
lcd.setCursor(2, 1);
lcd.print(lcd_maxBrightness);
break;
case 64:
lcd.write(byte(2));
lcd.setCursor(2, 0);
lcd.print(F("Auto dimming"));
lcd.setCursor(0, 1);
if (lcd_light) lcd.print(F("Always ON"));
else lcd.print(F("Auto OFF"));
break;
case 70:
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Set time"));
lcd.setCursor(0, 1);
lcd.write(byte(4));;
break;
case 71:
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Set start of"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("night mode"));
break;
case 72:
lcd.write(byte(3));
lcd.setCursor(3, 0);
lcd.print(F("Set end of"));
lcd.setCursor(0, 1);
lcd.write(byte(4));
lcd.setCursor(3, 1);
lcd.print(F("night mode"));
break;
case 80:
lcd.print(F("Time:"));
lcd.setCursor(8, 0);
lcd.print(rtc[5]);
lcd.print(rtc[4]);
lcd.print(F(":"));
lcd.print(rtc[3]);
lcd.print(rtc[2]);
lcd.print(F(":"));
lcd.print(rtc[1]);
lcd.print(rtc[0]);
lcd.setCursor(0, 1);
lcd.write(byte(0));
lcd.write(byte(1));
break;
case 81:
lcd.setCursor(8, 0);
lcd.print(F("_"));
lcd.print(rtc[4]);
break;
case 82:
lcd.setCursor(8, 0);
lcd.print(rtc[5]);
lcd.print(F("_"));
lcd.print(F(":"));
lcd.print(rtc[3]);
break;
case 83:
lcd.setCursor(9, 0);
lcd.print(rtc[4]);
lcd.print(F(":"));
lcd.print(F("_"));
lcd.print(rtc[2]);
break;
case 84:
lcd.setCursor(11, 0);
lcd.print(rtc[3]);
lcd.print(F("_"));
lcd.print(F(":"));
lcd.print(rtc[1]);
break;
case 85:
lcd.setCursor(12, 0);
lcd.print(rtc[2]);
lcd.print(F(":"));
lcd.print(F("_"));
lcd.print(rtc[0]);
break;
case 86:
lcd.setCursor(14, 0);
lcd.print(rtc[1]);
lcd.print(F("_"));
break;
case 90:
lcd.print(F("Evening starts at"));
lcd.setCursor(0, 1);
lcd.write(byte(0));
lcd.write(byte(1));
lcd.setCursor(7, 1);
lcd.print(evening[3]);
lcd.print(evening[2]);
lcd.print(F(":"));
lcd.print(evening[1]);
lcd.print(evening[0]);
break;
case 91:
lcd.setCursor(7, 1);
lcd.print(F("_"));
lcd.print(evening[2]);
break;
case 92:
lcd.setCursor(7, 1);
lcd.print(evening[3]);
lcd.print(F("_"));
lcd.print(F(":"));
lcd.print(evening[1]);
break;
case 93:
lcd.setCursor(8, 1);
lcd.print(evening[2]);
lcd.print(F(":"));
lcd.print(F("_"));
lcd.print(evening[0]);
break;
case 94:
lcd.setCursor(10, 1);
lcd.print(evening[1]);
lcd.print(F("_"));
break;
case 100:
lcd.print(F("Morning starts at"));
lcd.setCursor(0, 1);
lcd.write(byte(0));
lcd.write(byte(1));
lcd.setCursor(7, 1);
lcd.print(morning[3]);
lcd.print(morning[2]);
lcd.print(F(":"));
lcd.print(morning[1]);
lcd.print(morning[0]);
break;
case 101:
lcd.setCursor(7, 1);
lcd.print(F("_"));
lcd.print(morning[2]);
break;
case 102:
lcd.setCursor(7, 1);
lcd.print(morning[3]);
lcd.print(F("_"));
lcd.print(F(":"));
lcd.print(morning[1]);
break;
case 103:
lcd.setCursor(8, 1);
lcd.print(morning[2]);
lcd.print(F(":"));
lcd.print(F("_"));
lcd.print(morning[0]);
break;
case 104:
lcd.setCursor(10, 1);
lcd.print(morning[1]);
lcd.print(F("_"));
break;
}
}
Új hozzászólás Aktív témák
- TCL LCD és LED TV-k
- Az Oppo Find X8 Ultra lett a legvékonyabb kameramobil
- Azonnali fáradt gőzös kérdések órája
- Autós topik
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Horizon Forbidden West
- Futás, futópályák
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Apple iPhone 16 Pro - rutinvizsga
- Ford topik
- További aktív témák...
- PlayStation 5 (PS5) Digital Edition 825 GB játékkonzol, DualSense töltőállomással, ajándék táska
- Apple iPhone 15 (újszerű, független , 128 GB, 6 GB RAM, Kék)
- Samsung 55" QE55QN700CTXXH 8K UHD Smart Neo QLED Mini LED TV
- Asus VivoBook S15 S513 OLED (S513EA-L12917) Fekete - Garancia 2026.06.22.
- DDR5 GAMER PC: Új RYZEN 7 8700F/9700X/9800X3D +RTX 4060/5060/4070/5070 +16-64GB DDR5! GAR/SZÁMLA!
- Samsung Galaxy A54 5G , 8/128 GB , Kártyafüggetlen
- Telefon felvásárlás!! Huawei P20 Lite/Huawei P20/Huawei P30 Lite/Huawei P30/Huawei P30 Pro
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- Telefon felvásárlás!! iPhone 16/iPhone 16 Plus/iPhone 16 Pro/iPhone 16 Pro Max
- Telefon felvásárlás!! Apple Watch SE/Apple Watch SE 2 (2022)
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest