-
Fototrend
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
-
válasz
KoVee84
#19967
üzenetére
Mondd már el, hogy a szelektívvel mi újság van? Mert szerintem nem azt csinálja a program, amit az eredeti.
4 hétig kiír egy-egy nevet, aztán 6 napig azt, hogy szelektív.
Ha bármi miatt újraindul, a te neved lesz kint, ahogy már írták, de ezen nem is tudsz változtatni. Akár elemcsere vagy egy jóindulatú szomszéd miatt állandóan ti lesztek a Soros
![;]](//cdn.rios.hu/dl/s/v1.gif)
Miért újraindulással nullázod a számlálót, miért nem használod ki, hogy az rtc memória nem veszik el?
Én a mostani helyett naponta ébreszteném fel, kiírnám rá a dátumot, hogy látható legyen, ha valamiért lefagyott volna vagy bármi (nem változik a dátum).
Egyszer, újraindításkor wifiről frissíteném az időt. Utána csak akkor, ha nagyon elmászik (állítólag nem túl pontos, nekem nincs tapasztalatom vele, de ha következetesen pontatlan, azt lehet korrigálni programból is).
Nem az eltelt napokat venném alapul, hanem mikor lejár egy mandátum, kiszámítanám a következő változás napját és azt írnám a RTC memóriába. Ezzel azt lehet elérni, hogy soha többet nem kell piszkálni, ha újraindul, ha bármi történik (két napra kiveszed az akkut tölteni) mindig jó adatot fog mutatni.
-
its_grandpa
tag
válasz
KoVee84
#19967
üzenetére
Bocs de ez így egy ~ 130 soros borzalom.
A case ágak 0-3 ig ugyanazok, csak a név kiírása miatt van benne "magic number" azaz a texts[n].
Ez kb. a fele, 65 sor és remélem ugyanazt csinálja.int vref = 1100;const char* persons[] = {"Kovács","Könözsi","Csepura","Németh"};const uint64_t egy_nap = 86400000000;RTC_DATA_ATTR unsigned int reboot_counter = 0;void setup(){Serial.begin(115200);delay(10);epd_init();delay(10);// Correct the ADC reference voltageesp_adc_cal_characteristics_t adc_chars;}void loop(){int persons_no = reboot_counter; // csak a szépség kedvéértif reboot_counter < 4:{epd_poweron();epd_clear();delay(10);uint16_t v = analogRead(BATT_PIN);float battery_voltage = ((float)v / 4095.0) * 2.0 * 3.3 * (vref / 1000.0);String voltage = "Feszültség: " + String(battery_voltage) + "V";Serial.println(voltage);int cursor_x = 60;int cursor_y = 475;writeln((GFXfont *)&FiraSans, (char *)voltage.c_str(), &cursor_x, &cursor_y, NULL);cursor_x = 180;cursor_y = 290;writeln((GFXfont *)&OpenSansExtraBold72, (persons[ persons_no]), &cursor_x, &cursor_y, NULL);reboot_counter++;epd_poweroff_all();esp_sleep_enable_timer_wakeup(egy_nap * 7);esp_deep_sleep_start();}else if reboot_counter = 4:{epd_poweron();delay(10);int cursor_x = 550;int cursor_y = 475;writeln((GFXfont *)&FiraSans, ("SZELEKTÍV KUKA"), &cursor_x, &cursor_y, NULL);reboot_counter++;epd_poweroff_all();esp_sleep_enable_timer_wakeup(egy_nap * 6);esp_deep_sleep_start();}else{esp_restart();}} /* loop */A switch ágak végére meg illenék a break csak a megszokás miatt.
(ez a notepad++ ból történő másolás, kódformázás nem lett az igazi, bocs)
Új hozzászólás Aktív témák
- World of Tanks - OFF topic
- Autós topik látogatók beszélgetős, offolós topikja
- Mikrokontrollerek Arduino környezetben (programozás, építés, tippek)
- Samsung Galaxy A54 - türelemjáték
- Temu
- Sweet.tv - internetes TV
- Miskolc és környéke adok-veszek-beszélgetek
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Apple MacBook
- Hullanak a fejek az Apple-nél
- További aktív témák...
- Apple iPhone X Space Gray Ikonikus dizájn, Face ID, OLED kijelző 64 GB Használt, megkímélt ,100%
- GYÖNYÖRŰ iPhone 12 Pro Max 128GB Pacific Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3938, 100% Akku
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Apple iPhone 15 Pro Max 256 GB White Titanium 1 év Garancia Beszámítás Házhozszállítás
- Apple iMac 19.2 i5-8500 Radeon Pro 560X 4GB 16GB 256GB SSD 21.5" 4K Retina
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi
![;]](http://cdn.rios.hu/dl/s/v1.gif)
ekkold
