- Mobil flották
- Yettel topik
- Egy szenzor, két zoomkamera: újraírta a Huawei a mobilfotózás történetét
- Bemutatkozott a Poco X7 és X7 Pro
- Xiaomi 11 Lite 5G NE (lisa)
- Samsung Galaxy A56 - megbízható középszerűség
- Samsung Galaxy S22 Ultra - na, kinél van toll?
- Google Pixel topik
- Samsung Galaxy A55 - új év, régi stratégia
- Milyen okostelefont vegyek?
-
Mobilarena
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
-
KoVee84
senior tag
Csak a tesztelés miatt lett rossz ott az érték, egyébként minden név 7 napig jelenik meg, a Szelektív kuka felirat meg a 4. hét utolsó napján.
Nyilván lehet ezt sokkal jobban is csinálni, de az én programozó tudásommal ennek is nagyon örülök és majd nekiállok még csiszolgatni. Köszönöm az eddigi segítségeket!
-
KoVee84
senior tag
válasz
its_grandpa #19976 üzenetére
-
KoVee84
senior tag
válasz
ReFleXx #19969 üzenetére
Kisegítesz a kódrészlettel?
Van egy másik próblémám még egyébként, most próbáltam a wifi ntp-vel kiegészíteni a kódot, de mivel a opensans72eb.h majdnem 5 MB, ezért ha újrafordítom a kódot, akkor: Sketch uses 1753729 bytes (133%) of program storage space. Maximum is 1310720 bytes.133%
-
KoVee84
senior tag
válasz
KoVee84 #19966 üzenetére
#include <Arduino.h>
#include "epd_driver.h"
#include "font/firasans.h"
#include "font/opensans72eb.h"
#include "esp_adc_cal.h"
#include "pins.h"
#include "time.h"
int vref = 1100;
const char* texts[] = {"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 voltage
esp_adc_cal_characteristics_t adc_chars;
}
void loop()
{
switch (reboot_counter)
{
case 0:
{
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, (texts[0]), &cursor_x, &cursor_y, NULL);
reboot_counter++;
epd_poweroff_all();
esp_sleep_enable_timer_wakeup(egy_nap * 7);
esp_deep_sleep_start();
}
case 1:
{
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, (texts[1]), &cursor_x, &cursor_y, NULL);
reboot_counter++;
epd_poweroff_all();
esp_sleep_enable_timer_wakeup(egy_nap * 7);
esp_deep_sleep_start();
}
case 2:
{
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, (texts[2]), &cursor_x, &cursor_y, NULL);
reboot_counter++;
epd_poweroff_all();
esp_sleep_enable_timer_wakeup(egy_nap * 7);
esp_deep_sleep_start();
}
case 3:
{
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, (texts[3]), &cursor_x, &cursor_y, NULL);
reboot_counter++;
epd_poweroff_all();
esp_sleep_enable_timer_wakeup(egy_nap * 7);
esp_deep_sleep_start();
}
case 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();
}
case 5:
{
esp_restart();
}
}
} -
KoVee84
senior tag
válasz
ReFleXx #19959 üzenetére
Elvileg korábban valahol azt olvastam, hogy nagyon jó a fogyasztása, sleep modeban 170 mikroamper, de ez szinte biztos, hogy nem a deep sleepre vonatkozik.
Viszont a deepsleep miatt dobhatom ki a korábbi kódom, mert a millis() nullázódik. Van esetleg valami reboot számláló, mert akkor egyszerűen azt tenném a casekbe?
-
KoVee84
senior tag
Nem raktam deep sleepet...
órakezelésben tudtok segíteni?
Íme a kód:#ifndef BOARD_HAS_PSRAM
#error "Please enable PSRAM !!!"
#endif
#include <Arduino.h>
#include "epd_driver.h"
#include "font/firasans.h"
#include "font/opensans72eb.h"
#include "esp_adc_cal.h"
#include "pins.h"
#include "time.h"
int vref = 1100;
const char* texts[] = {"Kovács","Könözsi","Csepura","Németh"};
const unsigned long het1 = 604800000UL;
const unsigned long het2 = 1209600000UL;
const unsigned long het3 = 1814400000UL;
const unsigned long het4 = 2419200000UL;
const unsigned long szelektiv = 2332800000UL; // utolsó nap
//teszt
//const uint32_t het1 = 20000;
//const uint32_t het2 = 40000;
//const uint32_t het3 = 60000;
//const uint32_t het4 = 80000;
//const uint32_t szelektiv = 70000;
void setup()
{
Serial.begin(115200);
delay(10);
// Correct the ADC reference voltage
esp_adc_cal_characteristics_t adc_chars;
epd_init();
epd_poweron();
epd_clear();
delay(10);
// első hét
//feszültség
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);
//név
cursor_x = 180;
cursor_y = 290;
writeln((GFXfont *)&OpenSansExtraBold72, (texts[0]), &cursor_x, &cursor_y, NULL);
epd_poweroff_all();
}
void loop()
{
unsigned long currentMillis = millis();
switch (currentMillis)
{
case het1:
{
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, (texts[1]), &cursor_x, &cursor_y, NULL);
epd_poweroff_all();
break;
}
case het2:
{
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, (texts[2]), &cursor_x, &cursor_y, NULL);
epd_poweroff_all();
}
case het3:
{
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, (texts[3]), &cursor_x, &cursor_y, NULL);
break;
}
case szelektiv:
{
epd_poweron();
delay(10);
int cursor_x = 550;
int cursor_y = 475;
writeln((GFXfont *)&FiraSans, ("SZELEKTÍV KUKA"), &cursor_x, &cursor_y, NULL);
epd_poweroff_all();
break;
}
case het4:
{
esp_restart();
}
}
} -
KoVee84
senior tag
válasz
vargalex #19940 üzenetére
E-ink kijelzőt használok és úgy, hogy csak hetente 1x frissül, addig a kijelző ki van kapcsolva. De délután berakom a kódot.
-
KoVee84
senior tag
Elvileg kész van, csak 5 nap alatt lezabálja a 18650-es aksit
4 családos társasházban lakunk, ahol minden héten másik család a "hetes" (kuka kirakás, lépcsőház felmosás, stb).
Csináltattam képkeretet, belekerül a Lilygo 18650-es akkuval, minden héten másik család neve jelenik meg, kiírja az akkufeszt, meg hogy mikor kell kirakni a szelektívet.A lilygo honalpján ezt írja azt írja, hogy Support PCF8563 RTC, ebből én valamiért nem arra gondoltam, hogy tudja az időkezelést.
Ha gondolod, akkor este szívesen átküldöm a kódot, de nyilván senkitől nem várom/várhatom el, hogy megcsinálja helyettem
-
KoVee84
senior tag
Leprogramoztam a Lilygo E-Papert, de a millis()-t vagy delay()-t használva a fogyasztása brutális, így arra gondoltam, hogy veszek hozzá egy RTC modult.
A bekötést el tudná nekem valaki magyarázni lsz?
[Lilygo T5 EDP 4.7 hátlap]
[PCF8563]A terv az, hogy void setup-ban wifin NTP szerverről lekérem az időt, onnan meg az RTC modullal már tudok időzíteni.
-
KoVee84
senior tag
válasz
its_grandpa #19754 üzenetére
https://github.com/Xinyuan-LilyGO/LilyGo-EPD47 ő lenne a lib, és a demo exampleből indultam ki.
A feladat végtelenül egyszerű (lenne, ha értenék hozzá). 18650-es akkuval üzemelne a kijelző, hetente más-más max 8 karakter hosszúságú szöveg jelenne meg a kijelzőn, 4 hetente újrakezdődik. + ha már az exampleben pont ott volt, minden szövegváltásnál kiírja az aktuális akkufeszt.
A kód működik, bár rtc modul nélkül csak úgy tudtam önerőből megoldani a heti egyszeri szövegváltást, hogy delay(604800000);
A problémám viszont, hogy megjelenítendő szöveg karaktereinek méretét nem tudom megnövelni... Azt honnan tudom egyébként, hogy az aktuális lib milyen fontokat kezel?köszönöm előre is ha tudsz/tudtok valami okosságot erre!
-
KoVee84
senior tag
Sziasztok!
Segítsetek lsz, mert felrobbanok
Adott egy Lilygo T5 E-ink 4.7 kijelző és az istennek nem jövök rá, hogy hogyan tudok nagyobb betűméretet megjeleníteni. Example fájlból indultam ki, tehát mondjuk azt, hogy a programozói tudásom végesEz nem működik:
uint8_t frame = 2;
writeln((GFXfont *)&FiraSans, (texts[i]), &cursor_x, &cursor_y, &frame);illetve még ezzel próbálkoztam, de miután hozzáadtam a libraryt includenál hibát dob:
U8g2_for_Adafruit_GFX -
KoVee84
senior tag
Megjött a LILYGO T5-öm, de már az elején elakadtam
[Ez] alapján haladok, de megmondom őszintén ezt nem tudom értelmezni:Update to PlatformIO, if you use Arduino, you need to do theseIf you use Dowload ZIP to download and compile with Arduino IDE, please change src / main.cpp to a folder with the same name as your directory, otherwise you won't find the header files, such as using the downloaded folder named
TTGO-EPaper-Series-master
, then you need to change the name of main.cpp in src to TTGO-EPaper-Series.ino, and change the src directory to TTGO-EPaper-Series, and change the lib Move or copy the folders in the directory to your Arduino library directory.The default Arduino directory isC:\Users\your username\Documents\Arduino\libraries
, and then put the data directory intoTTGO-EPaper-Series.ino
in the same directory for uploading resourcesValaki tudna segíteni, hogy mit másoljak hova, mit nevezzek át mire?
-
KoVee84
senior tag
Sziasztok!
Segítsetek nekem lsz, mert első projektemre készülök és nulláról indulok.
Szeretnék egy e-ink kijelzős képkeretet készíteni, ami hetente más-más szöveget jelenít meg (hasonlót, mint ezen a videón, de nekem elég a fekete fehér).Aztán közben találtam egy ilyet: Lilygo T5
Jól gondolom, hogy ez egy minden az egyben eszköz, tehát áramot adok neki vagy 18650-es akku bele és működni fog?Kösz előre is
Új hozzászólás Aktív témák
Hirdetés
- gban: Ingyen kellene, de tegnapra
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- War Thunder - MMO Combat Game
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Tőzsde és gazdaság
- Napelem
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Autós topik
- Azonnali alaplapos kérdések órája
- Háborog az Apple az iPhone-ra írt első pornóapp miatt
- További aktív témák...
- RTX 4080 SUPER,16GB. Ryzen 7 7800X3D, 32 RAM Fury RGB! Garancia!
- Asztali PC , i7 9700K , RX 5700 XT , 32GB DDR4 , 500GB NVME , 1TB HDD
- Dell Inspiron 5406 2-in-1i5-1135G7 16GB DDR4 3200 512GB NVME 14" FHD Érintőkijelző W11Pro
- Eladó MacBook Pro 14" M1 Pro (2021) 16/512 99% akku Makulátlan állapotban!
- Újszeru GIGABYTE G5 - 15.6" FullHD 144Hz - i7-13620H - 48GB - 1TB - RTX 4050 - Win11 - 1,5 év gari
- ÁRGARANCIA! Épített KomPhone Intel i9 14900KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Országosan a legjobb BANKMENTES részletfizetési konstrukció! Lenovo ThinkPad L16 Gen 1 Prémium
- BESZÁMÍTÁS! ASRock A520M R3 3100 16GB DDR4 512GB SSD RX 6500XT 4GB BitFenix Neos Thermaltake 500W
- BESZÁMÍTÁS! Microsoft XBOX One S 1TB játékkonzol extra kontrollerrel garanciával hibátlan működéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged