- Motorola Razr 50 Ultra - ajtó, ablak
- Xiaomi Mi 11 Ultra - Circus Maximus
- Apple iPhone 16 Pro - rutinvizsga
- Külföldi SIM-ek itthon
- Profi EKG-s óra lett a Watch Fitből
- Honor 400 - és mégis mozog a kép
- Samsung Galaxy A54 - türelemjáték
- Samsung Galaxy S25 - végre van kicsi!
- Milyen okostelefont vegyek?
- Google Pixel topik
-
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
-
-
-
-
Elektro topikból átköltözködve (hosszas privi csevejre most nincs időm, spektrométert építek éppen
, így ide szemetelnék): azon gondolkozz még el, hogy milyen formában kellene a kütyüt hordani. Mert ha szorosan bőrhöz rögzítve, akkor muszáj, h kényelmes legyen, máskülönben a polcon végzi.
Pulzusmérőt nem kell megépítened, már megtették helyetted - igaz, erre még ráférne egy kis miniatürizálás:
Tipikus időskori baleseteken okulva: azon is el kell gondolkodni, hogy mi van, ha az alany éjszakai fürdőszobába menéskor esik el? Jellemzően nem okoskütyükkel a nyakunkban alszunk, lehet tele kéne poloskázni a lakást, a hanganyagra meg valami jó scriptet írni, hogy mikor kattanjon be a rendszer?
-
ViZion
félisten
Apósnak sógorék most vesznek/vettek vmit, ami sim kártyás. Ha vész van, akkor 5 számot próbál hívni, ha nem veszik fel, akkor vmi központot, ahonnan visszahívják. Ha nem sikerül, akkor küldik a mentőt. Elvileg, asszonynak ezt magyarázták. Gondolom ez drágább, sim havidíj+szolgáltatás is van, de nem ismerem, h mi ez, jobb kimaradni dolgokból.
-
Janos250
őstag
Én annak idején a pointerekbe keveredtem bele, és el is hajítottam a C könyvet. Szerencsére a C++ -ban már kevesebbet kell használni. Igyekszem is - ha csak egy mód van rá - elkerülni a pointereket. Mivel pointer = tömb, így van is rá lehetőség. A tömb neve a pointer, a tömb[index] pedig a pointer + index. Ahogy a pointernek bármilyen - értelmes - értéket adhatunk, ugyanúgy a tömböt is rádefiniálhatjuk bármire, pl. akár a processzor perifériáinak hardver memóriájára is, akár többféleképp is, hogy ha úgy tartja úri kedvem, akkor uint8_t - ként, vagy uint32_t -ként érem el. Ugyanez megoldható a struktúrával is, az is bárhova definiálható a memóriában, bármilyen más néven használt mezőre is.
Sokkal kisebb a hibalehetőség, mint pointerezni. Mindamellett arra se kell vigyázni, hogy a new által létrehozott felszabadításra kerüljön, mert másként, idővel baj lesz. (Bár ezt már az okospointerek tudják, hogy felszabadítják.) -
lanszelot
addikt
De milyen programot látok?
Bármelyik program futásáról kérdeztem.
Hogyan fut le egy program?
Ez volt a kérdés.
Írtam hogy hogyan gondolom.
Azt is valószínű hibásan.DigitXT:
Az a program amit bemásoltam az annyi.
Nincs" ==" nincs semmi. Nincs vizsgálat.
Tanulok, és par soros programokat próbálok írni.
Vettem egy készletet, van benne minden.
Kiveszek valamit a készletből és megpróbálom működésre bírni.
Van hozzá program a dvd-n, de azzal mit tanulnék, ha megírt programokat töltögetnék fel a leírás szerint?Az előbb kivettem egy gáz érzékelőt:
Érzékelő egy adatot küld.
Ezt kiiratom, és ennyi.
Semmit se csinálok vele, nincs semmi más.
Oled programja ott van a linkben, gáz érzékelő pedig x pin -rol bejön.
A gaz érzékelőnek még library se kell.
Semmi sincs a programban.
If-et azért raktam be hogy gyakoroljam az 'if' et.
Ennyi. Nincs hova rakni a serial print -et, mert van az 'if' és nincs más.
Nincs program. Csak kezdő vagyok. A legelején tartok.
De azt a programot már megoldották.
2 megoldás is jött.
Utána irtam, hogy nem értem az egyiket.
Majd azt hittem jól gondolom a program futásának menetét az arduino -n, és emiatt rosszul értelmeztem a programot.
Rájöttem hogy rosszul értelmezem.
Leírtam hogy képzelem el a program futását.
De oda írtam valószínű rosszul kepzelem.
Ezért kérdeztem, hogyan fut le egy program?
Most már az egymagos két magost sem értem.
Valószínű mivel az alap futást sem tudom. -
-
lanszelot
addikt
feketét fehéret felcserélve is fekete van hosszan, tehát törli a kijelzőt az a gond.
Nincs bug.Valami alap dologban szerintem el vagyok tájolódva.
Nem úgy működik a program, hogy egy sor lefut, majd csak utána a következő, es csak utána a következő..stb fentről le.... ballról jobbra?
Kivéve function, mert ott oda ugratjuk, és végeztével vissza ugrik.Tehát bemegy "if"-be ott tru/false utat követ.
Bent "if" -ben, ha van delay , akkor addig ami meg van ott adva megáll és csak a késleltetési idő leteltével folytatja?
Ha igen, akkor hogy lehet, hogy folyik a delay, és a loop elejére ugrik?
Ha nem, akkor hogy működik?#19817 erre a linkre utaltam
-
DigitXT
félisten
Egyébként teljesen felesleges az egész képernyőt törölni, csak villogni fog.
De amúgy igaz, hogy így részleteiben beszélgetni egy baromi egyszerű, kicsi
kódsorról, nem fog megoldást hozni, ha a teljes program máshol van elszúrva.
(És itt nem bántásból írom, hogy elszúrva. Én is elkövettem "koncepcionális"
hibát, még a minap is, pedig már programozgattam Arduinora is, és mégis...)Kérjük a teljes kódot, és megköpködjük...
Helyesen: segítünk debuggolni!
-
lanszelot
addikt
Nem tűnik el. Van fehér keret. Csak rövid ideig.
Ha törölné a fekete tovább lenne.
display.drawRoundRect -> ez újra rajzolja és ott van a fehér és fekete előtt is.
Nem értem mi az hogy nem rajzolja minden ciklusban.
Kijelzőt a loop elején törli. A megosztott oled linkemben is ott van.
Majd ha este haza érek megnézem, ha felcserélem akkor a fehér lesz e hosszabb ideig , vagy akkor is a fekete.Mielőtt kötekedésnek venné bárki, nagyon kezdő vagyok, és próbálom megérteni. Ezért azt írom le amit látok. Lehet rosszul írom. Csak megérteni szeretném.
-
lanszelot
addikt
Mindenkinek nagyon szépen köszönöm
(millis() - lastms > 200)
ezzel a villogás idejét szabályozom, ha jól értem
ha 200 helyett 4000 -et írok, akkor lassabban villog.
Fura megoldás, mert így csak a feketét késlelteti, tehát a fehér ugyanúgy rövid ideig vam.
Így meg olyan mintha nem villogna, ha pl 8000 -et írok.
Tudom, hogy kell átírni delay-el, csak értelmezni próbálom, hogy miért csak a fekete kapja meg a delay időt. Hiszen az mindenképpen lefut ha fehér ha fekete.
Nagyon kezdő vagyok programozásban
Agyalnom kellett mi micsoda.
uint32_t sem ismertem.
De legalább utána kellett járnom, és tanulhattam -
gordonfreemN
addikt
Valami nem oké még, mindössze annyit tettem, hogy bemásoltam a -1-es caset ahogy mutattad. Most ugyanúgy működik mint eredetileg. Felvillan és úgy marad ha megnyomom.
Közben még: arra volna tiapasztalatotok, hogy a potméter DC motorját H-hidas vezérléssel milyen eszközel érdemes megoldani? Jó lenne a minél kevesebb fesz esés a vezérlőn, mert 5VDC-m van és a motornak is kell ennyi. Ez esetben csak szubminiatűr relé jöhet szóba?
-
gordonfreemN
addikt
& vargalex: Ennyi az egész kód egyelőre.
Köszi.
Küldi a jelet nyomva tartáskor. A soros monitoron ezek szerint az ismétlés kódja a -1 ?
Ha igen, akkor gomdolkodom, hogyan lehetne megoldani ezt így ebben a formában.na még tovább olvasva a válaszok: igen ez a kód amit betettem még csak arra képes, hogy vagy az egyik led vagy a másik világít. Azt szeretném, hogy amíg nyomom a távon a gombot (hangerőt nyomom egyébként) addig világítson, azután ha elengedtem, kapcsoljon ki a led is. Az a LED világítson amelyik gombot épp nyomom.
Ebből majd egy DC motort fogok vezérelni hangerőszabályzásra: ALPS RK27112.Lehet látni S22-n az infrát.
-
vargalex
félisten
Ezért kérdeztem a kollégától, hogy ez a teljes kód-e. Mert ugye a bemásolt kód csak a másik gomb megnyomásakor kapcsolná le a ledet, addig folyamatosan világítania kellene.
A telefon kamárájához megjegyzés: telefon kérdése is, mert pl. iPhone-ok esetén (talán már a 6-os, vagy 7-es óta) a kamerán van IR szűrő, ott nem látszik a villogás...
-
gordonfreemN
addikt
Szia!
Köszönöm mindenkinek a segítséget. Sajnos az említett kód nem segített, egyszer felvillan aztán süket a led. Delay-el is ez a helyzet. Próbálkoztam már én is ilyesmivel, de nekem se jött be. Esetleg más ötlet?
Gondolom a kódok miatt érdemes ennél a switch-case-nél maradni és ezt csűrni csavarni valahogy. -
Ezeket általában C++ template-tel implementálják, én legalábbis azt csinálnám. Annyi a lényege, hogy a függvényparaméter típusa fordítás közben dől el.
Valami ilyesmi talán:
template <typename T>
void eeprom::put(T what)
{
eeprom::write((void*)&what, sizeof(what));
}És akkor kb. bármit tudsz menteni.
-
-
Blasius
tag
Igen, egy delay(5) segített. Még egy másik helyen a kódban előfordult egy hasonló eset. Azta... itt ilyenek vannak?
@Janos250
volatile char receivedChars[numChars]; el nem fordult le. (A volatile nem tudom pontosan mit csinál).A kód soros partról olvas. Van egy függvény ami karakterenként beolvassa ami a soros porton van. Ezeket hozzá csapja char receivedChars[numChars] -hoz (még néhány más dolog is történik, crc számítás stb) Ha jött egy 0x0a a soroson, az adat fogadás befejezettnek tekintett, és a függvény egy boolt átvált igazról hamisra. Egy másik függvény kezd valamit a beolvasott receivedCharsal, majd visszaváltja a boolt. A második függvénynél reklamált a fordító a volatile miatt. A hármas példa alapján indultam el. https://forum.arduino.cc/t/serial-input-basics-updated/382007
-
Janos250
őstag
"Mi az a 24"
Kétféle mask megadás terjedt el:
Az egyik (eredeti), hogy a mask 32 bitjében az első valahány bitet "folyamatosan" 1-re, az utána következőket pedig 0-ra állítod. Ezt használja pl. a windows
Másik, hogy /valamennyivel adod meg, hogy a mask első hány bitje egyes. A UNIX alapú rendszerek ezt használják, és ez persze jobb, mert nem lehet pl. a maskban mondjuk 50-et megadni, bármilyen kezdő is hálózat témában az illető.
A szabály a következő:
Van a Te IP címed, és van az, akivel dumálni akarsz.
A maskkkal mindkettőt bitenként logikai ÉS-eled. Azaz mindkettőben kinullázod azokat a biteket, ami a maskban 0.
Ha az így kimaskolt két cím "maradéka" megegyezik, akkor ugyanazon az alhálón, "dróton" van a két eszköz, azért küldesz egy broadcast (mindenkinek az alhálón szóló) üzenetet,
amivel megkérdezed, hogy kié az az IP cím. Ha valakié, akkor az válaszként elküldi a MAC címét, mert az alhálón nem IP, hanem MAC szerint kommunikálsz majd.
Ha senki nem válaszol, akkor levonod azt a következtetést, hogy nincs ilyen bekapcsolt gép -> hibajelzés. Ha valaki válaszolt akkor az küldi a MAC címét, és indulhat MAC cím alapján a kommunikáció. Ha a két maszkolt cím nem egyezik meg, akkor a gatewaynek (kapu a világ felé) kell küldened, és az ő dolga, hogy megkeresse, hogyan tovább, mert akkor az az állomás nem a Te alhálódon van.
Régen, amikor még nem a csillagpontos topológiát használtuk általánosan, hanem a busz topológiát, ott egyetlen koax kábelre voltak sorban felfűzve a gépek, akkor az szemléletesebb volt, mert akkor ami egy kábelen volt, az volt egy alháló.
Aztán, mivel egy gépen több alkalmazás is csatlakozhat a nethez (pl. két megnyitott Firefox), valahogy meg kell különböztetni, hogy ami válasz jön, az melyik FF-hez menjen. Ehhez az állomásod egyetlen IP címét még "kiegészíted a gépen belül még 2 bájttal", ennek a neve a port, amit a PHP átnevezett, ha jól emlékszem sessionra. Hogy kevesebben értsék meg, miről is van szó.Mivel az IPv6 már rengeteg IP címmel dolgozik, ott már az egy gépen belül is jut mindenkinek külön IP, ezért az IPv6-ban nincs port.
-
JozsBiker
aktív tag
Hát ha nem is egyszerre 255, de ha minden eszköznek fix ip címet adsz, ahogy én teszem, előbb-utóbb el tud az fogyni[...]
Az IP cím elfogyással kapcsolatban egy kis szösszenet. Bocs az offtopicért, de talán az érdekessége miatt tetszeni fog:
-
vargalex
félisten
Az ESP eszközeid nem akkor kapják a 192.168.4.1-et, ha ők AP-ként és DHCP szerverként működnek és te rájuk csatlakozol, így kapsz tőlük egy IP-t a 192.168.4.1/24-ből?
Elvileg működhet a netmask átírás, de egyébként nem egyszerűbb a PC-den 192.168.2.0/24-ből beállítani egy statikus IP-t, közvetlenül csatlakozni vezetékkel az N14U-ra és átállítani a LAN IP-jét egy saját hálózatodban lévőre (nem használtra)? Gondolom repeater módban kikapcsolja a DHCP szervert... Majd visszarakhatod a PC-det DHCP-re.
Ezért szeretem az OpenWrt-t. Ott ilyen esetben én a második router LAN interface-jának azt mondom, hogy DHCP-n kérjen magának IP-t (és gateway-t, DNS-t). Nem kell kézzel beállítani semmit, látszik az első router DHCP táblájában.
-
Az újabb verzió (2812B) kettős PWM-et használ. Az első fok az output driverek bemenő feszültségét csökkenti, így értek el jelentősen kisebb hőtermelést a chipen belül az előző verzióhoz képest. A blokkdiagramjuk persze teljesen titkos, de ha lehet hinni a marketing-kommunikációnak, akkor bizony nem sima stabkockákkal tömték meg.
Egyszerűen ellenőrizhető egyébként: 3.3V-ról és 5V-ról is táplálható a szalag, pár LED esetén már mérhető az áram csökkenése.ViZion: Azért neveztem közhiedelemnek, mert maga a gyártó sosem állított ilyet. Sőt a Pololu pl. egyenesen 50mA-t ír a datasheetjeibe pixelenként. A WorldSemi pl. sosem nyilatkozott arról, hogy maga a belső áramkör milyen referencia értékekkel dolgozik. Lehet, hogy a ledek benne 20mA-el mennek névlegesen, de ők alulhajtják gyárilag a közös tokozás miatt. A biztonsági tényező persze attól nem árt, csak imhol az ékes példája, amikor valaki az urban legend alapján üzemi értékek helyett abs.max értékekkel tervez. Aztán amikor elkészül, szomorúan látja, hogy alig 50%-ban használja ki a forrását.
-
op9
aktív tag
A problémám csak az, h ez a fényerőben is látszik. Úgy számoltam, hogy ennyi led-del egy 2.1A-es powerbank-kal tudom használni, és ha kell a fényerő, akkor maxra feltekerhetem.
És most látszik, hogy kellene a fényerő, de alig lesz világosabb, ha "fehéren" mind a három világít. Ha ezt tudom, akkor több led-et építettem volna be.Köszi a magyarázatot! Ez esetben legközelebb előbb tesztelgetek, és nem a specifikációra hagyatkozom.
-
gordonfreemN
addikt
Természetesen így teszek, ezért meg is köszöntem a tippet!
A megoldás amit említesz... (és köszönöm!) ez azt jelentené, hogy lemegy a for ciklusban a led villogás mondjuk egyszer, majd belép powerdown módba és onnantól nincs villogás?A lenti példánál (#19639) gordonfreemN válasza dew28 (#19636) üzenetére írtam legalább egy butaságot: 8s-ig tartanám powerdown módban, ezzel az a baj, hogy addig kellene nyomogatni a button_p-t is. Inkább egy 2s-os powerdown-al lenne ez talán élhető.
-
gordonfreemN
addikt
Jó, jogos.
Amúgy a feltett kérdésre tényleg nem tudni a választ vagy csak hagyjátok a kezdőt saját utakat járni?
Mert tényleg nem értem miért mi a különbség a lowpower.h és az avr/sleep.h közt.Próbálkozok egyébként:
#include "LowPower.h"
void setup() {
// put your setup code here, to run once:
}
void loop() {
{
// Allow wake up pin to trigger interrupt on low.
attachInterrupt(0, wakeUp, LOW);
LowPower.powerDown(SLEEP_FOREVER, ADC_OFF, BOD_OFF);
// Disable external pin interrupt on wake up pin.
detachInterrupt(0);
// Do something here
}
}
de azt a hibát adja az ellenőrzés, hogy'wakeUp' was not declared in this scope
-
-
-
ekkold
Topikgazda
-
-
Laurencius
újonc
Azért írtam oda, hogy akkor a képernyő elforgatása... A képernyőt - vagyis a kijelzőt - "fektetve" használnám, mint ahogy a számítógépem képernyőjét (monitorját).
Nekem kifejezetten monokróm - fekete megjelenítés, és világító háttér - kijelzőre lesz később szükségem. Ha nem lesz hozzá szerencsém, akkor természetesen a meglévő színes kijelzőt használom majd úgy, ahogy most javaslod.
Úgy tűnik válaszodból, hogy valamit lehet kezdeni a maxscroll utasítással... -
Laurencius
újonc
Egyelőre kipróbálni még nem tudom a javaslatokat, mással van teli az asztalom. De ha van egy kis időm, akkor keresgélek a lehetőségek között. Ilyen például a következő:
vajon szerinted a képernyő jobbra-balra mozgatása nem egyenértékű-e a képernyő görgetésével, illetve fel lehetne-e valahogy használni az én célom megvalósítására?for (uint16_t i = 0; i < maxscroll; i++) {
tft.vertScroll(0, maxscroll, i);
delay(10);}Persze, ehhez a képernyőt el kell fordítani:
tft.setRotation(r); //setRotation(uint8_t r)
Ez a kód elforgatja a képernyőt: 0=0, 1=90, 2=180, 3=270.
Persze az is fontos kérdés számomra, hogy vajon a korábban jelzett színes kijelző helyet tudnék-e alkalmazni monokróm LCD-t? A Google-n keresgélve a rengeteg típus között épp csak azt nem tudom, hogy melyiket lehetne ehhez az Arduino összeállításhoz minél kevesebb, vagy semennyi kód átírással használni... -
gya/352
tag
00 - Naxi - elsőre indul
01 - Easy Hits Florida - másodikra megy
02 - CLASSIC ROCK MIAMI - érvénytelen link
03 - Magic Oldies Florida - érvénytelen link
04 - Magic 60s Florida - érvénytelen link
05 - Classic Rock Florida - érvénytelen link
06 - Radio 1, NL - másodikra megy
07 - 1.FM - GAIA - elsőre indul
08 - Skonto - érvénytelen linkPl ez az adó nincs benne a listában; 1a-60er.radionetz.de/1a-60er.mp3 másodikra megy
vagy ezt elsőre lejátsza mp3.magic-radio.net/320
Lehet hogy a webcím struktúrájával van gondja? -
gya/352
tag
Az a bosszantó hogy van olyan állomás amit gond nélkül el kezd lejátszani akár induláskor preset beállítás alapján, akár kiválasztás alapján; és van olyan amit meg nem. És természetesen ami nekem kellene az a nem kategóriában van.
Most két adó van a presetben:
preset_00 = icast.connectmedia.hu/5001/live.mp3 # 1 - Retro Radio
preset_01 = 205.164.62.15:10032 # 2 - 1.FM - GAIA, 64kAz elsőt nem tudja csak többszöri indításra lejátszani, a másodikat mindig csont nélkül elinditja.
-
lanszelot
addikt
Hello,
Kaptam egy Arduino Uno-t ahol dolgozom, az egyik tanártól.
Ez a leírás szeritn csináltam. Pont úgy.
Azzal is hibát dob:
Arduino: 1.8.18 (Windows 10), Board: "Arduino Nano, ATmega328P"
Error while burning bootloader.
avrdude: Expected signature for ATmega328P is 1E 95 0F
Double check chip, or use -F to override this check.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.Avrdudess:
You have the latest version :)
>>>: avrdude -c arduinoisp -p m8
WARNING: Unable to detect MCU
avrdude.exe: Error: Could not find USBtiny device (0x2341/0x49)
avrdude.exe: opening programmer "arduinoisp" on port "usb" failed
avrdude.exe done. Thank you.Bár még mindig nem tudom hogy kell használni.
#19517weiss: szerintem félre értetted, blink és hasonló programról írtam, nem bootloader-ről
Amúgy én vagyok a programozó. -
lanszelot
addikt
Nincs olyan lehetőség, hogy Arduino as ISP.
Nem ismeri fel se Arduino, se Arduino Programmer ISP, se a másik
se Arduino Programmer ISP -n /2 van belőle/
Nem írtad hogy kell összekötni. #19512 ICSP alapján kötöttem összeLehúztam mindent nano-ról,
Nano-t usb kábellel bedugtam pc-be,
AVRDUDESS 2.14 portable elindítottam,
Programmer - Arduino válsztottam
Detect - Unable to detectvargalex: vásárlás leírásban ott volt, hogy nincs bootloader, csak nem tudtam az mit jelent
gondoltam, úgy is saját kódot akarok rárakni. -
lanszelot
addikt
-
lanszelot
addikt
Rossz bootloader írást nézel. Ezért rossz képet nézel.
A te képed nem ICSP pin-en keresztül van.
Írtam hogy a normál a nano-al nem működik.
Error kód alapján megkerestem miért.
Linket is dobtam ahol leírják miért.
ICSP pin-en keresztül kell frissitenem, ezért a kép már az alapján készült.
De igen, a normált is próbáltam, fentebb ott az error kód.
#19487 -es írásom -
lanszelot
addikt
Hello,
Igen, feltöltöttem.
Csupasz board -ra, kábelek és nano nélkül.
És hiba nélkül rá is ment.
Már amennyire érték hozzá. Gondolom hogy rajta van, nem láttam mit kellene látnom. Nagyon gyorsan felment Mega -ra.
De vártam még 1 percet hátha csinál vmit. De nem, és hibát se írt mikor lehúztam.
Szerintem vagy hibás a nano.
Vagy a Mega nem tudja rárakni a bootloader -t.
Már nem veszek több Arduino-t. -
lanszelot
addikt
Elnézést kerek, ha kimaradt volna valami.
Azt hittem mindent megválaszoltam .
Dobtam video linket hogy csináltam, mind a 2 alkalommal.
És azt is mit írtak, hogy normál módon miért nem lehet bootloader -t rakni rá.
Amiatt ICSP pin-eken keresztül kell csinálni.
Ott az a videó, hogy hogy kell, azt követtem.
Ha ő kihagyott vmit, akkor én is.
Megán az első miatt alapból fent van az ISP, mivel nem mutatta sehol hogy hogy kell törölni.
Nem is íratta felül, tehát gondolom rajta van.
Nem értek hozzá. Csak gondolom
Az ICSP pin -es bootloader rakásról csak azt az egy videót találtam. Sehol semmi mást.
Tehát csak azt követtem.
És belinkeltem hogy mi az error kód. /Mivel az oldal amit írtál már nem létezik/
Nem tudom mit tudnék még írni, mivel nem értek hozzá. -
gya/352
tag
Igen, tudom. Napközben én is munkahelyről telefonról tudtam csak írni, meg nem tudtam oylan figyelmesen elolvasni a tanácsokat.
Egyébként szó volt itt róla még hogy flasheljem más particiós sémával is. OTA nélkül próbáltam még akkor amikor írtad, de nem valami nem volt jó neki mert folyamatosan újra bootolt mint az erase_flash után. -
gya/352
tag
OK. De az nem most lesz.
Talán majd hétfőn.
Mégegyszer köszönöm a segítséget neked is és its_grandpa-nak is.
Nagyon kedves tőletek. Nem minden technikai fórumon megszokott ez, hogy ilyen türelmesen és kitartóan segítenek a gyakorlottabbak a kezdő bénázóknak. Tegyük hozzá, úgy hogy a bénázónak halvány lila gőze sincs az egészről. -
lanszelot
addikt
Most ez alapján próbáltam.
De itt is hibát dob.
"
Arduino: 1.8.18 (Windows 10), Board: "Arduino Nano, ATmega328P"
Sketch uses 4354 bytes (14%) of program storage space. Maximum is 30720 bytes.
Global variables use 482 bytes (23%) of dynamic memory, leaving 1566 bytes for local variables. Maximum is 2048 bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x2f
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x2f
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00
Problem uploading to board. See https://support.arduino.cc/hc/en-us/sections/360003198300 for suggestions.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences." -
gya/352
tag
Napközben a melóhelyen. De ott meg természetesen nem játszózok a cuccal, csak itthon.
Szóval nincs kötve semmi a GPIO12-re.
Most újra feltöltöttem a firmware-t, felment a data könyvtár, megeditáltam, és most már jobban figyelek hogy mit ír ki a soros monitorra, mutatom az nvs-be írást: [kép]
Ha jól értelmezem, beírta és kiolvasta onnan.
...
bootol... [kép] [kép]
..és aztán minden változtalan abból a szempontból hogy nem szól. -
lanszelot
addikt
Hello,
Természetesen hibát dobott:
"
Arduino: 1.8.18 (Windows 10), Board: "Arduino Nano, ATmega328P"
Error while burning bootloader.
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences."Ezt írták megoldásnak, de fogalmam sincs ez mit jelent: /nem az angol, hanem programozásilag/
Many of the Chinese Nano, in addition to using CH340G chips as their interface, do not come with the Arduino boot-loader installed. These need to be loaded via the ICSP pins before they can be programmed via the IDE. -
Tankblock
aktív tag
Szia
https://github.com/indrekluuk/LiveOV7670/blob/master/CMakeLists.txt
és a .gitignore filaban benne van a szépség:
https://github.com/indrekluuk/LiveOV7670/blob/master/.gitignore
nem tölti fel gittre a sajár CMake fileját ..... modjuk ez lehet a Visual Code + PlatformIO végett van, ebben nincs tapasztalatom....idea
# ignore files generated by "platformio init"
src/.idea
src/.pioenvs
src/.gitignore
src/.travis.yml
src/CMakeLists.txt
src/CMakeListsPrivate.txt
/cmake-build-debug/CMake írja le mit hol kell keresnie a fordítónak és a linkelőnek.
Make után amikor a esp-idf átváltott CMake re a hajamat téptem egy darabig mire megszoktam. -
lanszelot
addikt
Nincs rajta bootloader azt tudom
Csak azt nem mit jelent.Megosztottam a hibát. A mostanit azért nem szúrtam be mert rengeteg sor hiba. Nem csak pár sor mint eddig.
Nincs pont olyan nevű file, és ahogy át írtam az biztos rossz.
Nem értek hozzá. Próbáltam valamit kezdeni vele. -
lanszelot
addikt
Most meg ez nem tetszik neki "Adafruit_SH110X.h"
Hibákat dob folyamatosan.
Feladtam. Nem értek hozzá.Még a blink -et se tudom kicsiholni. Ez kuka.
Amúgy a Nano- mon nekem alapból 2 piros led világít. Nem tudom nem amiatt nem megy a blink. Power és TX .gya/352:
De én egyáltalán nem értek hozzá. Csak kedv csinálónak gondoltam, hogy de jó lesz...
Hát meghozta a kedvem: hogy darabokra törjem -
lanszelot
addikt
Oda is leszedtem. De amíg nem másoltam az ino file mellé a ".h" file-t, addig hibát dobott.
Most már csak a Adafruit_Sensor.h dob hibát, de azt nem találom.
"fatal error: Adafruit_Sensor.h: No such file or directory
#include <Adafruit_Sensor.h>
^~~~~~~~~~~~~~~~~~~
compilation terminated.
exit status 1
Compilation error: Adafruit_Sensor.h: No such file or directory"Fogalmam sincs, hogy mi az vagy hogy keressem.
Emiatt megy el a kedve a kezdőnek, ha már az elején csak falakba rohan.
Egy egyszerű led villogtatás se megy, nem tudom hogy képzeltem, hogy majd én hőmérséklet mérőt pakolok össze... -
lanszelot
addikt
ha felé viszem az egeret "uload" van kiírva.
Bármibe kezdek semmi se akar össze jönni.
Ehhez vettem a kis kijelzőt. /többi volt/
Mondom ez dug-dug, feltölt, és örül.
Első projectnek jó lesz.
Hát nem.
include dolgokat nem tudom honnan szedjenm össze.
Netről lebogarásztam az első 3at, és bemásoltam az ino file mellé, így már csak az Adafruit_Sensor.h hiányzik neki....no de az a világon sehol se találom.
Ha egyáltalán jól csinálom az egészet.
Nagyon nem ez volt az oldalon írva. Feltöltöd, és kész..ahham. Pontosan. -
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]
-
lanszelot
addikt
Először is köszönöm szépen.
Értem mit kell csinálni, de volna egy kérdésem:
3-as pont Library. Gondolom abba az eszköz vmi felé tulajdonság leírása kerül. De - honnan szerzem be különböző dolgokhoz, és honnan tudom milyen parancsokat foglal magába?
Vagy rosszul értelmezem a Library dolgot? -
gya/352
tag
Ha jol ertelmezem a linkelt megoldas egy full flash erase.
De feltoltes elott az arduino is elvegzi ezt. Nem?
A masik hogy oke hogy bootkor ez tortenik, de utana mukodes kozben sem inditja el nemelyik adot. Es masodik probalkozasra pedig elinditja. Minden masodikra tudja olvasni/irni az nvs-t? -
its_grandpa
tag
Én mondtam, hogy sokat szívtam :)
VS1053b Datasheet 32. oldal, 8.9 Supported MIDI Formats.
New instruments have been implemented in addition to the 36 that are available in VS1003.
Ez egy 90 oldalas pdf, amit sokat bújtam amikor saját lib-et írtam.
Midit nem próbaltam csak mp3-at, gyakorlati tapasztalatom nincs, elismerem. -
Laurencius
újonc
Jaj de jó!
Igazán jól fogok ma aludni ezzel a lépéssel. Mármint, hogy most már lefekszem. A kísérletet sajnos egyelőre nem tudom egy darabig elvégezni, mert hosszabb időre más irányú elfoglaltságom van, de mihelyst megtörténik jelentkezem.
Köszi, hogy volt kedved a témával (velem) foglalkozni.
Új hozzászólás Aktív témák
Hirdetés
- Apple iPhone 14 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
- Új Apple iPhone 16 Pro 128GB, Kártyafüggetlen, 3 Év Garanciával
- Honor Magic7 Lite 512GB, Kártyafüggetlen, 1 Év Garanciával
- Honor 400 lite 256GB, Kártyafüggetlen, 1 Év Garanciával
- HP Prodesk 600G4 SFF - i5-8500, 16GB DDR4, 512GB NVMe SSD, ATI R5 430 2GB eladó!
- BESZÁMÍTÁS! Samsung Odyssey G5 32 144Hz WQHD 1ms monitor garanciával hibátlan működéssel
- Azonnali készpénzes AMD Ryzen 1xxx 2xxx 3xxx 5xxx processzor felvásárlás személyesen / csomagküldés
- ÁRGARANCIA! Épített KomPhone Ryzen 5 9600X 32/64GB RTX 5070 12GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! MSI Crosshair 17 HX Gamer notebook - i7 14700HX 64GB RAM 1TB SSD RTX 4060 8GB WIN11
- IKEA (HAVREHOJ) tablet vagy laptop tartó
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest