- Fotók, videók mobillal
- Mobil flották
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Samsung Galaxy A54 - türelemjáték
- Google Pixel 9 és Pixel 9 Pro összehasonlító gyorsteszt
- Motorola Moto Tag - nyomom, követ
- Milyen okostelefont vegyek?
- Xiaomi 14 - párátlanul jó lehetne
- eSIM, a kártyamentes szabadság
- Huawei Watch GT 5 Pro - egészség + stílus
-
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
-
nessh
tag
Fura amúgy mert a ahol a projekt leírása van ott a képen lévő gomb olyan mint a 4 lábasok, de a "connection matrixban" az látszik hogy 3 lábat kötött be...
Ez is jó lehet?
https://www.ebay.com/itm/10Pcs-Tactile-Push-Button-Switch-Tact-Switch-for-Arduino-12V-4P-DIP-6mmx6mmx5mm-/193011379814?_trksid=p2349624.m46890.l49292 -
nessh
tag
Jaj az LCD nem tűnt fel bocs, jogos.
Huh, asszem optimista voltam, szerintem maradok az eredeti setupnál
Annyit még légyszi mondjatok meg hogy, ez a gomb jó lehet-e a projekthez:
https://www.ebay.com/itm/KEYESTUDIO-Momentary-Push-Button-Switch-Module-for-Arduino-DIY-Project/132730793806?hash=item1ee75f2f4e:g:14AAAOSwbrRbZSAU -
repvez
addikt
látszolag nem sok változott, de talán igy kevésbé felismerhető karakterek vannak .
aryes: mint irtam lehet , hogy a komunikácio félreérthető volt akkor, mert azokat a példakapcsolásokat amiket néztem , azok is I2C kapcsolás volt felhuzo ellenállások nélkül csak a 4 kábel. Vagy én értem félre, hogy ha valamit az SA és SDL-re teszek az azt jelzi, hogy I2C be akarom használni, ha viszont meg valamelyik másik számos pinre akkor soros kapcsolásra.
Ezzel nem azt mondom, hogy nem kell ellenállás a I2C-hez, mert olvastam a müködéséről, csak azt gondolom, hogy talán azok a modulok amiket használok és néztem már alapbol tartalmaz mindegyik modul ilyen elleállást és ezért már nem is kell pluszba.
És majdnem ugyan e a helyzet a 5v vs 3.3 volttal is. Amiket néztem kapcsolásokat mindenki csak direkten rádugta az 5Vra és meg sem emlitették, hogy nem lenne jó az 5 v neki hanem csak 3.3.
Ezért vagyok néha megzavarodva, hogy mikor mit hogyan használjak és hova tegyek. -
-
repvez
addikt
semmi változás, se akkor ha fizikailag se akkor ha a kodba cserélem fel a pin számokat.
Csak a GPS start sorig jut el , legalább is ezt irja ki a seral monitor.
Elvileg attől nem lehet baja semminek, ha igy cserélgetve vannak a lábak, már ha nem a feszultséget kötöm rosz helyre?
Meg, hogy az usb csak igy ki be van dugdosva mikozben villog ?
Csak mert a pendrive se mindig szereti ha nincs leválasztva, pedig elvileg PnP eszköz.
Viszont a usb nél nem jelenik meg leválaszthatonak. -
repvez
addikt
Köszi valószinuleg ez lenne a probléma , mert a regscanner szerint 0x39es a száma , De beirtam a kodba azt amit irtál és a debugger
error -7 est ir. ami infor találtam rola csak, hogy time out error.Amugy érdekes, hogyha minden chipnek más más lehet a regszáma akkor egy test kodnál miért nem tesznek egy olyan sort bele, hogy be tudja állitani a sajátjához.
ha a default nem jo, mert igy akor minden modulnál hiba lehet . -
repvez
addikt
Hát a regscanner kod lefuttatása után felismerte és kiirta a 0x39es cimet hozzá
De amugy a kodban nem látom, hogy hol hivatkozna erre a modulra , hogyha más is lenne rákötve akkor honnan tudná, hogy ez ennek szol.Amugy ma sikerült elöször csinálnom valamit arduinoval, szoval fogalmam sincs hogyan kapcsoljam be a debugot.
A másik kérdésem, hogy , a forditoban nincs sehol sem valami kapcsolo, amivel le lehetne állitani a program futását? csak ugy lehet leállitani ha kihuzom az USB kábelt?
Nincs valami softveres?Illetve, ha tobb modult akarok használni egy idoben, akkor mit és hogyan tudom egy kodba tenni, hogy ugyan azon a serial monitoron jelenjen meg ?
Mert probálkoztam a két modulhoz tartozo példa kodbol , azokat a részeket átmásolni egy az egyben amik a setup részhez valok, és azokat is amik a loophot, meg a declaráciokat is.
Mindent oda ahogy az eredeti kodban is csak épp a másik alá.
De igy nem lett jo. -
repvez
addikt
A sensor library volt a gond.
Most lefut és sikerült is a cimeket lekérdezni mindegyik modulrol, tehát elvileg akkor müködik minden és a bekötés is jó.
Viszont nem mindegyiknél kapok eredményt ha a példaprogramot futtatom le.
Ha a nagyon egyszeró adatokat iratom ki az MPU 9250essel akkor jönnek az adatok, de ha nem csak az XYZ adatok kellenek hanem a többi senzoré is akkor csak azt irja ki , hogy started, de a kód többi része nem fut tovább.A lézeres távolságmérésnél meg azt irja ki ,hogy nem tud bebootolni . a seria monitor müködik és a kód is lefordul hiba nélkül, csak épp nem jön belöle adat .
#include "Adafruit_VL53L0X.h"
Adafruit_VL53L0X lox = Adafruit_VL53L0X();
void setup() {
Serial.begin(115200);
// wait until serial port opens for native USB devices
while (! Serial) {
delay(1);
}
Serial.println("Adafruit VL53L0X test");
if (!lox.begin()) {
Serial.println(F("Failed to boot VL53L0X"));
while(1);
}
// power
Serial.println(F("VL53L0X API Simple Ranging example\n\n"));
}
void loop() {
VL53L0X_RangingMeasurementData_t measure;
Serial.print("Reading a measurement... ");
lox.rangingTest(&measure, false); // pass in 'true' to get debug data printout!
if (measure.RangeStatus != 4) { // phase failures have incorrect data
Serial.print("Distance (mm): "); Serial.println(measure.RangeMilliMeter);
} else {
Serial.println(" out of range ");
}
delay(100);
}
-
repvez
addikt
ha a konyvtárakra gondolsz ami a modulhoz kell akkor igen , betalloztam a librarykat és ott is a menüben.
az abban lévő példa kodot akartam futtatni, hogy biztos, hogy jo legyen .
De mint irtam, ezt ugy is megkapom, hogy nincs rádugva a kártya, csak a kodellenörzést csinálom. -
Janos250
őstag
Már nem emlékszem pontosan, hogy asztali gépről, vagy telefonról, és milyen beállításoknál maradtak ott a lezáratlan kapcsolatok. Most zárja őket PC-ről, valami más a hiba. Megpróbálom kidobni az irodalmi programot, és saját magam újraszervezni az egészet. Ez más esetekben párszor már bejött.
Nálam a Firefoxról
"Connection: keep-alive" -al jön.
Hogy konkrétan mit csinál rá az ESP, azt még próbálgatom, ha lesz egy kis időm. -
Janos46
tag
Az előzőben küldött
https://simple-circuit.com/nodemcu-esp8266-ds18b20-sensor-st7789-display/
oldalon lévő programban meglehetősen sok hibát jelzett, ráadásul az érzékelő
csatlakoztatását is eléggé zavarosan adta meg, és még arra is hibát jelzett. Ime:A DS18B20 érzékelő adatcsatlakozója az ESP8266 NodeMCU D5 érintkezőhöz csatlakozik,
amelyet a kód a következők szerint definiál:
// define DS18B20 data pin
#define DS18B20_PIN D2 // DS18B20 data pin is connected to NodeMCUTalátam egy másik oldalt (és itt több programra is utal)
https://simple-circuit.com/nodemcu-esp8266-lm35-temperature-sensor-st7789-tft/
én is azokat a könyvtárakat használom amivel az is dolgozik. Az ellenőrzésnél a
#define TFT_CS D8 // TFT CS pin is connected to NodeMCU pin D8 (GPIO15)
sornál akad el és a köv etkező hibákat írja (a többi utalt programnál hasonló
a helyzet):aaa:17:19: error: 'D8' was not declared in this scope
#define TFT_CS D8 // TFT CS pin is connected to NodeMCU pin D8 (GPIO15)
^
C:\Users\Olga\Documents\Arduino\aaa\aaa.ino:21:39: note: in expansion of macro 'TFT_CS'
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);
^
aaa:15:19: error: 'D3' was not declared in this scope
#define TFT_DC D3 // TFT DC pin is connected to NodeMCU pin D3 (GPIO0)
^
C:\Users\Olga\Documents\Arduino\aaa\aaa.ino:21:47: note: in expansion of macro 'TFT_DC'
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);
^
aaa:16:19: error: 'D4' was not declared in this scope
#define TFT_RST D4 // TFT RST pin is connected to NodeMCU pin D4 (GPIO2)
^
C:\Users\Olga\Documents\Arduino\aaa\aaa.ino:21:55: note: in expansion of macro 'TFT_RST'
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);
^
exit status 1
'D8' was not declared in this scope
Jó lenne, ha a hibát meg lehetne oldani, (avatott szemeknek vszin nem nagy gond, hisz mint a fotó is mutatja, működik) mert akkor a többi progit is kipróbálhatnám, és estleg lenne amit használni is tudnák, ráadásul az esetleges eljövendő problémákat javítani is tudnám (lásd a mottóm).
-
hukhl
csendes tag
Szia!
Igen ennél a sornál akarnám beírni a "LedMillis" funkció visszatérési értékét a "LedStateResult "-ba, hogy a következő funkció lefuttásnál már ezzel a beolvasott értékkel dolgozzon a funkció. Ekkor elvileg 2000 msec-onként a visszatérési érték negálódik és ezzel a LED kivezérlési értéke is. -
kesztió
aktív tag
Hát azért nem, mert pl. az OMRON Solid State relén világosan írja, hogy 5V, és utána kellett néznem, illetve kipróbálnom, hogy 3,3V-tal is működik. A fehér fényű TM1617-es display esetében pedig továbbra sem vennék mérget arra, hogy 3,3 V-on már megy, mert a fehér LED startból 3V felett kezd világítani (a pirosról tudom, hogy igen).
Úgyhogy azért nem épp egy pinről volt szó. -
gazso75
aktív tag
Anyám vett valami 8000Ft-ért egy csengőt, aminek a külső egységét áthozta, hogy tegyek bele elemet. Szétkaptam, és nincs benne elem, a gomb nyomására generál "valami" annyi áramot, hogy kiadja a jelet a csengőnek. Lehet csak nekem új ez, de tetszett.
Gondoltam ezt ócóbban is meg lehetne csinálni. -
EvilNside
csendes tag
Ez mondjuk szimpi lenne, de kicsit szkeptikus vagyok az alin szereplő adatokkal. Most néztem egy példát a használatára, amiben a virtualwire libe et használják. És ott a fogadó oldal PLL jét külön el kell indiítani, hogy vételi módba kapcsoljon. A tippem, hogy az 1uA current, ha még valós is, csak addig ennyi, amig a PLL nem fut. Van esetleg gyakorlati tapasztalatod ezzel kapcsolatban?
-
-
KFORboy
senior tag
Inkább tanulj és tudj mielőtt valamibe közbeoktojálsz bármit is, nemhogy még a "specifikációt" fikázd... főleg, hogy totál érthető, sőt volt még bőven ott ezután, még maga konkrét elkészíteni kívánt dolog is leírásra került egy az egyben !
A netről copy && pastelni mindenki tud én viszont egymagam 3 hét alatt a nulláról összehoztam egy kész eszközt nyákrendezéstől a kódon át a működő tesztelt összeépített végeredményig, optimalizáltam is, hogy 1KB Tiny13A-ba beleférjen 0.1% -os millis accuracyval míg te a delayedet forgattad mint mókus a mogyorót mert még azt se ismered...Légy oly szíves, te inkább ne is írj semmit se, semmilyen kérdésemre se a jövőben !
Illetve ha valahol osztanád az észt, akkor ezt ne a korábbi hányavetek módon mert én ott leszek, hogy megmondjam a frankót !Van különbség a segítség meg az önszerepeltetés között
Pláne, hogy ez utóbbi, mire föl... -
KFORboy
senior tag
Hogy nem működött?
Úgy konkrétan egyáltalán.
Kis módosítással betudtam indítani, mert úgy eleve megakad indulásnál (töltsd fel és mérd ki) de nem erre van szükségem, mert delay nem opció.
Akkor elég részletesen leírtam mindent, és bár talán pofátlan dolog lenne készet várni megrendelésre... de ez a kód akkor sem működött sehogy sem :"Dloopban folyamat mennie kellett nekem a fesz. csekkolásnak.
De bizonyos történések mint pl PWM kiírás adott pinen tól-ig tartományban adott idő alatt. 3 óra után kell hogy történjen, de ha addig delayben van, akkor nincs feszültség csekkolás se arra reakció (egyik pin ami HIGH volt az menjen LOW-ba másik pin ami LOW volt az meg menjen HIGH-ba [kimeneti táp FET lekapcsol - > Verror LED felvillan]) mert a delay akaszt mindent...
Ezt akkor is leírtam, meg hát... ez egyértelmű, erre van a delay.
Mondtam, hogy valami idő alap kellene amit referenciának használhatok és eventeket tudok rá időzíteni.
De ti akkor is mondtátok, hogy delay-el az jó lesz majd bedobtad ezt a kódot... és fórumtárs még tapsikolt is mellé
Én meg... hát mit mondjak...
Nem akartam bunkó lenni... ennyi... elengedtem...
De ettől még nem jó és ha az is lenne (mert kijavítottam...) akkor se lenne jó...Ehelyett megint választottam a magam útját, napestig bújtam a netet, olvasgattam, tanultam és megtaláltam a megfejtést ami az orrom előtt volt, a millis és arra időzíthető time eventekkel való szimulált multitasking.
Így van folyamatos feszültség csekkolás ami megvédi a kimenetre kötött készüléket kb10ms-on belül (interrupt pinen) ha túllépi a küszöbértéket, van egy időalap amihez kötve megtörténnek a dolgok, mint a PWM kiírás, meg egyéb kapcsolások... miközben végig ott a "V check" a loopban.
Akkor csak annyit kellett volna mondanotok, hogy; Hééé buta vagy, a millis az nem "mértékegység" mint az unsigned long vagy a byte... hanem egy, a bekapcsoláskor keletkező ms alapú időmérő... erre meg lehet hivatkozni és szimpla matek egyenletekkel meg akár "if" függvényekkel akármit megcsinálhatsz delay nélkül adott időben végbementő parancsokkal.
EZ nagy segítség lett volna akkor... és az egy dolog, hogy én nem tudom, mikor 3-5 napja ismerkedtem AVR programozással a nulláról, de hogy ti se (?)
Ez a tessék lássék dolog meg igen, sajnos gyakran látom/olvasom dolog itt a fórumon.
Azóta igen, 2x is átgondolom, hogy ide írjak segítségért vagy inkább bruteforce jelleggel jöjjek rá magam, mert aztán én is kapok egy ilyen asztalra dobott finomfőzeléket (természetesen tányér nélkül) , aztán szemezzem belőle a húst... HA van...
-
KFORboy
senior tag
Nem, most is mint ahogy korábban is, csak bedobsz valami tessék lássék látszat HSZ-t de igazából nesze semmi fogd meg jól, mint ha csak HSZ-t gyűjtenél. :")
Példának okáért, mint korábbi kódban is mikor segítséget kértem, bármennyire is értékelem az igyekezeted (vagy mi volt az... ) a kód konkrétan egy az egyben nem is működött amit írtál, illetve amit állítottam, hogy a delay mint ahogy neve is adja meg úgy eleve mint mindenki tudja, egy az egyben megakaszt minden processt míg le nem jár, azaz nincs "szimulált" multitaskingra lehetőség, mert minden áll míg a delay le nem járt... azaz a háttérben nem fog monitorozni semmilyen pint nem fog érzékelni semmilyen változást, nem fog történni semmi ha pl feszültség túllépés van a küszöbértéken amit megadtam...
De végül megoldottam magam rá pár napra millis és time event jelleggel mindent, ahogy elejétől kezdve írtam és szerettem volna... csak akkor még nem ismertem illetve félreértettem a millis funkcióját (amit persze le is írtam), de az itteni vonalat hagytam a fenébe, mert minek kellene a hangulatkeltés...
Most meg bedobod, hogy globál variable jellegbe csináljam...
Tök jó, másképp hogy is tenném ? épp ez a lényeg, hogy van egy integer aminek lesz egy értéke ha kiolvasok analogreaddel pinről, de aztán annyi, többször nem is kell, és azt utána oda felpakolja... majd a void loop dolgozhat vele az arra megírt process mint egy extra érték ami hozzáadódik egy bázis értékhez...
Ha setupban lenne akkor nem tudna vele dolgozni egykönnyen a loop se semmi a folyamaton kívül eső dolog mert a címke megszűnik a folyamat után... a loopba meg ez eleve nem is kell mert egyszeri kiolvasásra kell és nem folyamatosan... plusz eleve az egész kódom delay nélkül, millisre épül és már van egy analóg kiolvasás folyamatosan a "háttérben" Vchecknek és sajnos így késleltetések nélkül össze tudnak akadni az analóg kiolvasások a parazitív indukció de főleg az A/D konverter kolátai miatt amit uC képvisel.
Tehát akkor most az amit írtam, az működik, és te írsz butaságot, vagy nem működik és butaságot írsz nekem mert az nem segítség, hogy az ég kék a fű meg zöld, hanem nyílvánvaló :"DSejtem most sem akarod azt mondani, hogy sorry my bad, hanem majd magyarázkodásba kezdesz...
Pedig totál egyszerű nem hozzászólni valamihez amit nem tudsz, én is meg tudom tenni... sőőőt elismerni azt, hogy nem tudom de tök jó lenne ha valaki megosztaná velem az infót ha tudja... -
Janos46
tag
Ha megnézed a https://arduinoplus.ru/arduino-elektronnie-chasi/ oldalon az általa készített áramköri tábla rajzát, akkor ott a DS3231-nek a VCC-je a NANO-nak a VIN-jével van összekötve piros jelöléssel. Ezt akkor mire véljem? Elrajzolta?
-
Janos250
őstag
Köszi, ez elég jónak tűnik. Van is egy a demoban, ami szimpatikus:
https://www.amcharts.com/demos/line-graph/
Neten ki is próbálom majd. Ez másfél mega, ami nem sok, kivétel, ha az ember egy ESP memóriájához hasonlítja.
Vannak esetek, amikor nem lényeg, hogy csicsás legyen, olyankor azért a verébre nem akarok ágyúval lőni.
És, hát nem is mindig van net. Ha a pógár rákapcsolódik az ESP WiFijére, és azon megnéz egy lapot, nem feltétlenül van net. Tudom, persze, ott van mellette a fiókban két használaton kívüli router, miért nem használom, de nem feltétlen teszem, ha azt akarom bemutatni, hogy az arduinos dolgok mennyire egyszerűek.
Egy példát mondok:
arduinouser.hu/temp/alaprajz-2.svg
Ez az alaprajz 3 kb. , és nagyjából ugyanúgy néz ki, mint az autocad származék verziókban, és az adott célra nem is kell több.
(Az utcanevet kiikszeltem, bár nem titok, a saját helyén fenn van neten) -
gyapo11
őstag
Az lehet, hogy a magasabb szintű nyelvek fordítóját az átlagnál jobb programozók írják, viszont meg van kötve a kezük. Náluk egy print utasítás paraméterezhető, formázható, minden portra működik, az assembly meg egy stringet másol a memóriából egy másik memóriába, ami a képernyő területe. Több nagyságrend különbség van sebességben bármilyen optimalizálási képességekkel is. Viszont a magas szintű printet sokkal könnyebb használni és már alaposan tesztelt.
De volt szó a for ciklusról vagy egy port beolvasásáról, mindegyiknél van még egy csomó utasítás C++ szinten, amit assemblybe nem kell beletenni, tehát gyorsabb.
És nem kell az egész programot assemblyben írni, csak a sebesség kritikus részeket, a váz maradhat C++ legtöbbször. Ha a loopnak kell assembly sebességgel pörögnie, akkor viszont muszáj az egészet megírni gépi kódban.
Párszor nézegettem a turbo pascal lefordított, futtatható kódjá codeview-val, mutatta az assembly mellett a pascal forrásnyelvi sorokat is, érdekes volt, akár még tanulni is lehet belőle, de ott is látszott azért a fölösleg, bár nem olyan sok. A fölösleget úgy értem, hogy föl volt készítve mindenféle változóra, túlfutásra, 0-val osztásra meg hasonlók, amit én nem biztos, hogy megtennék assemblyben. -
KFORboy
senior tag
Igen... meg nem :"D
PIN 1 az amolyan Feedback. (tudom, Arduinok többnyire 5-5.5 V maxra specifikáltak, tehát ide majd egy feszültség elosztóval jön le, mert az eszköz üzemi fesz 7.2-8.4V amúgy, illetve az arduino maga, kap egy 7805-öt )
Mindvégig védi az eszközt a túlfesztől, csak akkor adja rá PIN 2 (FET kapcsolás) -t ha oké, és így is marad ha oké.
PIN 3 egy reset gomb
PIN 4 aktivál egy ágat amivel a kimenő feszültséget lejjebb dobja/állítja a tápvonalon ami megy az eszközbe, ezáltal a készülék alacsony töltöttséget érzékelve automatán leáll kb fél perc alatt... de kap rá 10 percet.
Ezután PIN 2 mint főkapcsoló LOW, teljesen áramtalanítja az eszköz, kis delay,
(hogy ne buggoljon össze, mert ha PIN 4 LOW de PIN 2 mint főkapcsoló nem zárult akkor 8.4 megy be a készülékbe, az meg visszakapcsolhat, ez meg ezek után nem biztonságos leállást eredményezhet.)PIN 4 LOW (gondolván, arra, hogy PIN 3 reset gombbal újra lesz indítva, akkor ne buggoljon be, hogy alacsony töltöttséggel induljon, a Vchech meg még engedné is, mert az arra figyel, hogy PIN 1 egyenlő vagy kisebb mint x Volt)
-
-
KFORboy
senior tag
A delay teljesen megállítja a programot, ilyenkor nincs lehetőségem IF / ELSE és társai okosságokat hozzádobni...
A Delay legjobb tudásom szerint késleltetés szimpla programokra, hogy minden időben "beérjen" inputban, de addig nem csinál semmit a kontroller míg a delay le nem jár.Most vagy én tudok valami rosszul... vagy nagyon rosszul tudok mindent, lévén még a millis meg micros fogalmában se vagyok otthon, illetve még ott vannak a timerek... de nem akarom elhinni, hogy egy egyszerű belső számláló indítása ami adott idő értékeknél végrehajt valamit olyan bonyolult lenne Arduinoban)
-
Sanki
addikt
Mindenhol kerestem a hibát (delay, debounce, stb..), de erre nem gondoltam volna, aztán elkezdtem kikapcsolgatni és meglett a hiba. Most jónak tűnik.
(#12626) Gergosz2: Igazából a kiiratás később nem szükséges, nem fogom látni, most csak PC-n monitorozásnál néztem az adatokat.
Amúgy ezt is a delay() funkcióval kellene csinálni?(#12627) Janos250: Egy wemos d1 mini már úton van. Mondjuk az nem esp32 ahogy nézem.
-
Janos250
őstag
A hiba zöme megvan:
A .h és a .cpp fájlokat nem az include könyvtárba kell tenni, hanem a lib-be úgy, hogy a lib-ben csinálunk egy könyvtárat, aminek az a neve, mint a .h (és a .cpp) fájlnak, ebben a könyvtárban csinálni kell egy src könyvtárat, és oda kell elhelyezni a .h és .cpp fájlokat. Akkor minek van az include, az titok.
Így lefordítja, feltölti, de nem fut. :-( -
Janos250
őstag
Egy structot, ami tömb elemének lesz a típusa, és ilyen tömböt adok át egy objektum egyik tagfüggvényének. A type tűnt legegyszerűbbnek, és ment is simán. De tényleg lehet, hogy nem is így csinálom
Tulajdonképpen nem is azért akartam lefordítani, hogy ezt PIO-n használjam, hanem a PIO tanulása céljából, mert a 3D nyomtatós Marlint akarnám használni, de ahhoz nincs meg a szükséges sallang Arduino IDE alá, mindenki PIO-val fordítja. Most azt hiszem letörlöm teljesen az egész VS Code-ot, és újra felrakom, mert lehet, valami alapvető gondja van. Időnként csak bámul rám a nagy szemeivel Atom Anti, és loading...loading, és még jó sokáig loading.
-
Janos250
őstag
Kösz!
. Tényleg megoldotta a problémát. Eredetileg benne volt, csak valami nyűg miatt kivettem, láttam úgy is megy, de akkor még nem volt egyparaméteres függvény benne. Ez csak az egyparaméteresnél jött elő, ezért erre nem is gondoltam.
Közben előkaptam egy régi rendszert egy másik diszken, hogy azon is próbáljam. Ott meg újra előjött a korábbi probléma, hogy nem ismerte fel az uint8_t -t típusként. Korábban az Arduino.h includolása megoldotta a problémát, de most az se. Valami más tipus-definíciós fájlt kellett volna includolni, de sehogy sem ment, nem találtam ami jó lett volna.
Vannak váratlan események. A napokban a szabványos (kisbetűs) stringet használtam az arduinos (nagybetűs String) helyett, de ott meg nem volt meg a to_str függvény. Nem értettem a dolgot, hiszen a C++11 dolgait eddig úgy találtam, hogy tudja. Utánanéztem a neten, kiderült, hogy a gcc ezen verziójából kimaradt. Írták, hogy van újabb verziója, amire ki lehet cserélni, de annyi mindent kellett volna átírni, hogy bele se fogtam. Átraktam Stringre. Abban legalább jól meg van oldva a konvertálás is.
Köszi, mégegyszer.
-
-
Na, szóval kiderült, hogy ha a powerOff() metódust használom, akkor nem megy deep sleepbe a modul, arra a hibernate() való, így sikerült 1 mA alá mennem fogyasztásban. Ezt csak a gagyibb multiméteremmel tudtam mérni, szóval pontosan nem tudom, mennyi az annyi. Kicsit kellett trükközni, mert a GxEPD "elfelejti", hogy hibernálva volt a display mikor az ESP32 deep sleepbe megy, és nem reseteli. Sajnos az egész ojjektum nem fér bele az RTC RAM-ba így az osztályba vettem fel egy RTC_DATA_ATTR változót.
-
robohw
aktív tag
Ez minden, csak nem egyértelmű.
A GPL 2 elég laza licensz, de azért bármit nem enged meg.
Alább sorolja is, hogy mit lehet és mit nem.Adott licensz általában elvárja, hogy az a kereskedelmi termék is ugyanazon licensz alá tartozzon, amelyben a lib, vagy kódrész felhasználásra került.
Az is elvárás, hogy a licenszet mellékelni kell (magyarul), a TELJES forráskóddal együtt. Ez ugyanis az egésznek az értelme.Az tehát a legritkább esetben lehetséges, hogy egy GPL licenszelt open source kódot closed source formában értékesíthessenek, megkötés nélkül.
Az ilyenek általában copyleft-esek.
Ez meg ilyen:
"You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License."
stb..
-
zsolti_20
senior tag
Nem egészen. Az a példában ez szerepel : "const byte address[6] = "00001";"
Volt már szó itt a fórumon arduino licence-ről? Nem találtam semmi érdekes ezzel kapcsolatban. Ha építek valamit arduino alapra, pl ha megnyomok egy gombot akkor egy oled kijelzőre írja ki azt hogy "Hello", majd valaki jelentkezik rá, hogy megvenné tőlem én azt eladhatom neki legálisan? -
zsolti_20
senior tag
Jegelem jelenleg az egészet mert ezek az NRF24 modulok nem érnek 1ft-ot sem. Hihetetlen hogy van belőle 3 féle is és mind a 3ból van kb 5 féle forrásból származó modulom és mind kuka. Hogy lehet ennyi selejtet gyártani?
Megunom az egészet kukázok mindent és áttérek inkább 2.4ghz Wi-Fi-re.
Komolyan mondom már arra is érzékeny hogy az asztalra teszem le a nyákot vagy a kezembe fogom. De még úgy se tetszik neki ha ugyan olyan szögben tartom. -
patesz
csendes tag
-
Bogyo72
csendes tag
Elvileg lehet, de ez ilyen szép egysoros lett.
Én pont azért választottam, mert két egység van egy lapon. De így utólag lehet egyszerűbb lenne két különállóval. Ez a dip kapcsolós állítgatás a két cucc között eléggé macerás, mivel egy programer van mindkettőhöz, így lehet kapcsolgatni, plusz olvasni is egyszerre csak az egyiket lehet. -
-
zsolti_20
senior tag
Az MFRC522 modul használatánál ez a gond:
[link]
"Inverted access bits did not match!"
Az NRF24L01 modulnál pedig hibásan kapja meg az üzenetet pl Hello World helyett
@ello World vagy H!llo Wor d stb..
Sd kárty modulnál pedig a fájlok listázásánál nem listáz mindent csak pár filet és tovább is ugrik.
A modulok zavarják egymást. Nincs probléma ha egyesével használom őket, sőt még akkor sem ha a kettő modult használok, bár akkro már kell az sd kártya olvasó modul MISO lábára egy 330ohm ellenállás. Ha pedig mind a 3 modul csatlakoztatva van akkor zavarják egymást, hiába adtam meg, hogy mikor legyen LOW és HIGH az adott láb.
Szerintem két SPI modulnál többet nem támogat az arduino ez a probléma. Hiszen szeparáltam őket hardveresen és szoftveresen is. Az egyedüli megoldás az volt, hogy az NRF modult egy másik arduino modulhoz csatlakoztattam, bár jó kérdés, hogy ez továbbítani tudja vagy sem a fő modulnak. -
DigitXT
félisten
Szerintem itt arra gondolt a költő, hogy ezt a kódrészletet bedobja egy nagyobb
kódba, amikor az itt a loopban szereplő dolgokat, egy kuldjedwaze nevű "voidba"
teszi, viszont valami furmányos okból nem ír bele for ciklust a tömbön való végig
lépkedéshez, hanem inkább kuldjedwaze2 néven újabb voidot szeretne írni, hogy
oda másik tömbhivatkozást használjon. Ez kétségkívül nagyon érdekes módja a
tömbök használatának... A 30 bájt spórolás külön tetszett, ínséges időket élünk. -
_q
addikt
Köszi, így már megy. Akkor most jön az összeollózása a kódnak.
(#11649) gyapo11
Ha nem tudom a nevét előre, akkor van a gond. Erre kell a wifimanager, mert nem tudom direkt módon minden router nevét és jelszavát megadni. Ki tudja 10 év múlva milyen routerem lesz. Persze lehet az is, hogy a jelenleg nevét és jelszavát adom majd meg minden jövőbeli routernek, de ha még se így szeretném akkor akkor direkt módon nem tudom előre megadni ahogy írod. -
-
_q
addikt
Így kezdődik pedig:
#if defined(ESP8266)
Tehát ha nincs definiálva akkor ESP32 könyvtárakat importál.
Amit linkeltél 8266-ra van, ha le akarom fordítani akkor hasonló hibát dob:
In file included from D:\DownloadTemp\WiFiManager-development\examples\OnDemand\OnDemandConfigPortal\OnDemandConfigPortal.ino:7:0:
C:\Users\T\Documents\Arduino\libraries\WIFIMANAGER-ESP32-master/WiFiManager.h:36:22: error: 'const char HTTP_HEAD []' redeclared as different kind of symbol
const char HTTP_HEAD[] PROGMEM = "<!DOCTYPE html><html lang=\"en\"><head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1, user-scalable=no\"/><title>{v}</title>";
^
In file included from C:\Users\T\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\WebServer\src/WebServer.h:30:0,
from C:\Users\T\Documents\Arduino\libraries\WIFIMANAGER-ESP32-master/WiFiManager.h:21,
from D:\DownloadTemp\WiFiManager-development\examples\OnDemand\OnDemandConfigPortal\OnDemandConfigPortal.ino:7:
C:\Users\T\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\WebServer\src/HTTP_Method.h:10:3: note: previous declaration 'HTTPMethod HTTP_HEAD'
HTTP_HEAD = 0b00100000,
^
Multiple libraries were found for "WiFi.h"
Used: C:\Users\T\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\WiFi
Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
exit status 1
Error compiling for board ESP32 Dev Module. -
_q
addikt
Akkor lehet én értettem félre, de nekem kicsit másnak tűnt a linkelt minta kód.
Wifimanageren belül az OnDemandConfigPortal.ino lenne az ami nekem kell ha nem tévedek a sok mintakód közül.
A hiba:
In file included from C:\Users\T\Documents\Arduino\libraries\WIFIMANAGER-ESP32-master\examples\OnDemandConfigPortal\OnDemandConfigPortal.ino:14:0:
C:\Users\T\Documents\Arduino\libraries\WIFIMANAGER-ESP32-master/WiFiManager.h:36:22: error: 'const char HTTP_HEAD []' redeclared as different kind of symbol
const char HTTP_HEAD[] PROGMEM = "<!DOCTYPE html><html lang=\"en\"><head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1, user-scalable=no\"/><title>{v}</title>";
^
In file included from C:\Users\T\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\WebServer\src/WebServer.h:30:0,
from C:\Users\T\Documents\Arduino\libraries\WIFIMANAGER-ESP32-master\examples\OnDemandConfigPortal\OnDemandConfigPortal.ino:11:
C:\Users\T\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\WebServer\src/HTTP_Method.h:10:3: note: previous declaration 'HTTPMethod HTTP_HEAD'
HTTP_HEAD = 0b00100000,
^
Multiple libraries were found for "WiFi.h"
Used: C:\Users\T\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\WiFi
Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
exit status 1
Error compiling for board ESP32 Dev Module. -
_q
addikt
Szerintem ez nem az amire én gondoltam.
Alapból van egy ESPNow kapcsolat, így a fő ESP amin fut a webserver az AP módban van. Ez így megy is, viszont a routerre fel kell csatlakozzon az NTP lekérés miatt és mivel a router hálózatán keresztül akarom elérni a webservert. Na most a routerre csatlakozás nekem direkt módon, a kódba beírva megy. Ha viszont egy másik routerre akarok csatlakozni, mert vagy máshol van az eszköz vagy routert cserélek, akkor be kell írnom a router új SSID-jét, ehhez új kódot kell fordítani és rátölteni az ESP-re.
Van a wifimanager opció ami elvileg ebben segítene, de nem tudom rátölteni az ESP-re mert hibát ír ki rátöltésnél. Ez lenne amit szeretnék, van kép illusztráció is hozzá.
-
Akkor most én is kérdezek: mi a különbség az SPIFFS és az NVS között? Arduino ide-ben lehet használni az NVS-t? Azt is elő kell készíteni, mint az SPIFFS-et, partícionálással/ a memóriakiosztás beállításával? Vmi jó leírást tudtok ajánlani? Mert gugliztam, de nem sok mindent találtam róla.
-
DigitXT
félisten
Tud konvertálni, persze, csak honnan a viharból* tudja, hogy mi a TZ?
Én úgy értettem a kérdést, hogy GPS alapon kell, a te kódod ugye NTP...*: hacsak meg nem mondod neki "parasztosan", hogy márpedig ez.
Szerk: ha jól látom, te is beírtad kézzel, hogy CET... Szerintem a kérdés
arra vonatkozott, hogy ezt honnan lehet megtudni GPS alapján: amúgy
találtam vmi NMEA stringet, ami erre vonatkozik, de nem próbáltam.
Új hozzászólás Aktív témák
Hirdetés
- Megaport gaming pc + billentyű
- Csere-Beszámítás! Ryzen 9 9950X3D Processzor! 16Mag-32Szál!
- Csere-Beszámítás! Intel Core I9 14900KS 24Mag-32Szál processzor!
- Csere-Beszámítás! Asus Rog Strix GTX 1080Ti 11GB GDDR5X Videokártya!
- Csere-Beszámítás! Asrock Challanger B580 12GB GDDR6 Videokártya! Bemutató Darab!
- BESZÁMÍTÁS! MSI Z390 i5 9400F 16GB DDR4 512GB SSD RTX 2060Super 8GB Corsair Carbide Series 200R 600W
- Xiaomi Redmi Note 13 256GB, Kártyafüggetlen, 1 Év Garanciával
- Telefon felvásárlás!! iPhone 12 Mini/iPhone 12/iPhone 12 Pro/iPhone 12 Pro Max
- PS5 konzolod megvásároljuk: Budapest, Kecskemét, Szeged, Debrecen vagy akár GLS futárt küldünk!
- Bomba ár! Dell Inspiron 7400 - i7-1165G7 I 8GB I 512SSD I 14,5" 2K I HDMI I Cam I W11 I Garancia!
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: Liszt Ferenc Zeneművészeti Egyetem
Város: Budapest