- Motorola Moto G84 - színes egyéniség
- iPhone topik
- Nem lesz Xiaomi 16
- Két butatelefon és egy 5G-s okos a HMD-től
- MIUI / HyperOS topik
- Egy óra, két rendszer
- One mobilszolgáltatások
- Samsung Galaxy A56 - megbízható középszerűség
- Milyen okostelefont vegyek?
- Merész dizájn és új teleobjektív az iPhone 17 Pro mobilokban
-
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
-
its_grandpa
tag
Amíg "debuggoltam" írtatok párat de sebaj, azért ezt most csak itt hagyom
Jogos, nem emlékeztem rá de most megnéztem.
Viszont azt gondolom megtaláltam és vesszek meg ha értem másnak miért működik.
Esp32_radio_init.ino 28. sor preferences.clear() , töröl mindent.
Ezután kiírja kódból az összeset,nézzük a 49. sort. preferences.putString ( "preset", "6" ) ;Ezt látjuk a hibaüzenetben:
:58:11.630 -> D: nvs_get_str failed 1102 for key preset, keylen is 6, len is 150!A kulcs hossza 6 ("preset" sztring hossza) de mi 150-et akarunk olvasni.
Ennek oka a main.cpp 708. sorától az nvsgetstr ( const char* key ) függvény és a 145. sor#define NVSBUFSIZE 150 // Max size of a string in NVS
A nvsgetstr fv. első 5 sora :
static char nvs_buf[NVSBUFSIZE] ; // Buffer for contents
size_t len = NVSBUFSIZE ; // Max length of the string, later real length
nvsopen() ; // Be sure to open nvs
nvs_buf[0] = '\0' ; // Return empty string on error
nvserr = nvs_get_str ( nvshandle, key, nvs_buf, &len ) ;
Megnyitjuk, a 150 hosszú nvs_buf 0. pozijára beírjuk a C sztring szeparátort, eddig OK.
Ezután viszont vissza akarjuk olvasni a kulcsot ( a mi esetünkben ez a "preset") , a 150 hosszú nvs_buf-ba, de mindig 150 hosszan mert a len változó értéke az bizony 150.
Ez így - szerintem - sose fog menni,hibaüzenet lesz a 718. sorban.
Ha minden igaz a kulcs valódi hosszát így lehet(ne) kideríteni.size_t real_len = 0;
nvs_get_str ( nvshandle, key, nullptr , &real_len );
Ezután kellene beolvasni a kulcsot a tényleges hossz ismeretében.nvserr = nvs_get_str ( nvshandle, key, nvs_buf, &real_len ) ;
Itt egy jó példa fv. a tényleges hossz megállapítására [link]
Új hozzászólás Aktív témák
- Vivobook X1403ZA 14" 3K OLED i5-12500H 16GB 512GB NVMe ujjlolv gar
- Apple iPhone 15 Pro 256GB,Dobozával,12 hónap garanciával
- BAZÁR Laptop Notebook billentyűzet BILL használt és új 1hét garancia POSTA ON SZÁMLA, GARANCIA
- Apple iPhone 15 Plus 128GB,Újszerű, USA verzió, 12 hónap garanciával
- Apple iPhone 15 Pro max 255GB,Kábel,12 hónap garanciával
- iKing.Hu- Samsung Galaxy S24 Ultra Titanium Gray Titán dizájn, 200 MP Pro kamera, S Pen
- ŐSZI BOMBA AKCIÓK! PSN, STEAM, UBISOFT CONNECT, EA APP, XBOX EREDETI KULCSOK 100% GARANCIA
- HIBÁTLAN iPhone 13 mini 128GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3336
- Huawei P Smart 2019 64GB, Kártyafüggetlen, 1 Év Garanciával
- HP 14 Pavilion FHD IPS i5-1135G7 4.2Ghz 16GB RAM 512GB SSD Intel Iris XE Graphics Win11 Garancia
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest