- sziku69: Fűzzük össze a szavakat :)
- gban: Ingyen kellene, de tegnapra
- Gurulunk, WAZE?!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- lezso6: Nem látszik a kurzor Chrome alatt a beviteli mezőkben?
- zebra_hun: Hűthető e kulturáltan a Raptor Lake léghűtővel a kánikulában?
- Argos: Szeretem az ecetfát
- bambano: Bambanő háza tája
- Elektromos rásegítésű kerékpárok
-
LOGOUT
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
-
Janos250
őstag
Hogy így beszéltek róla, kíváncsiságból megnéztem ennek a ledes, gombos, kijelzős panelnak a kapcsolási rajzát.
https://www.handsontec.com/dataspecs/display/TM1638.pdf
Tetszik ez a multiplexelt megoldás, hogy amit "két végéről" kell meghajtani, olyanokból több is mehet egy kontrollerről. Ez az előnye a közös katódnak. Nekem senkivel nincs közös Katóm. Nem Kató, nem közös. Legalábbis úgy gondolom. Valamikor így működtek a szobányi, vagy nagyobb számítógépek ferritgyűrűs operatív tárjai is.
Viszont egy valamit nem sikerült megértenem:
A hét szegmenses kijelzőhöz a négy címvonal GR1...GR4 rendben van, de minek kell "alul" kettő vezeték, az A és B, miért nem elég egy?
Aki tudja, ne titkolja el előlem! -
-
Janos250
őstag
Szevasztok!
Köszi mindenkinek a segítséget hálózat ügyben. A javaslatokat kombinálva megszületett a megoldás.
Tulajdonképpen pofonegyszerű, csak tudni kellet (volna), hogyan.
Majd, ha lesz több időm, teszek fel konkrét, tutorial stílusra átírt programokat, most csak a lényeg:
Van a WiFiClient osztály, ami Stream leszármazott, azaz a Stream összes tagfüggvényét ismeri,
https://www.arduino.cc/reference/en/language/functions/communication/stream/
plusz azokat, amiket még a leszármazottakban megadtak, mint pl. print, println, printf, stb.
Vagyis:WiFiClient client;
client.connect("192.168.0.24", 80) // a cél gép IP, port
és már írhatunk is rá, pl. :client.write("proba\n");
client.println("println proba szoveg") ;
client.printf("printf proba %d\n",48) ;
client.write(buffer,10) ;
.
.
client.stop();
A másik oldalon pedig:WiFiServer wifiServer(80);
WiFiClient client = wifiServer.available();
while (client.available()>0) {
char c = client.read();
.
.
}
client.stop();
Tehát ugyanúgy használható, mint például a Serial().
Így már (remélem) könnyen fog menni a légihidat megoldani:
adó UART->ESP32->WiFi.......Wifi->ESP32->vevőUART. -
Janos250
őstag
válasz
Dißnäëß #13257 üzenetére
"Fájlátvitel: tökéletes arra a HTTP is."
Olyat még nem csináltam, ki kell bogarásznom, de hirtelenjében nem találok rá se példát, se leírást.
Az UART-on bejövő adatokat összegyűjtöm egy "fájlba", azaz egy vektorba, és másodpercenként egyszer egyben elküldöm.
"B opció, hogy VPN csatornát húzol ki a kliensről a vezetékes gépig"
Na, ez egész szimpatikus, nekem eszembe sem jutott. Persze, hogy hogyan csinálok VPN elérést a telefonhoz WiFin csatlakozó ESP-n, azt még szintén nem tudom.
"valami halálegyszerűt,"
Mivel még egyáltalán nem használtam VPN-t, mert eddig nem kellett semmire, nem tudom, melyik a halálegyszerű.
"Raspberry Pi "
Nem akarok málnát. Részben, mert azt preferálja az emberfia, amiben nagyobb gyakorlata van, részben meg már le vannak gyártva a PCB-k, be vannak ültetve az alkatrészek.
"persze érthető, ha nem írja le az ember"
Nem titok, csak nem akartam a lényegről elterelni a vonalat: GPS
Találtam ezt, de ezt se nagyon tudom hová tenni:
"HTTP uses TCP and TCP is a streaming protocol. You just need to send the HTTP headers, then pipe the serial input to the TCP socket. There's no need to store anything on the esp besides the transfer buffers."
Kénytelen leszek a TCP socket-ot is megtanulni? -
Janos250
őstag
Próbára azt csináltam, hogy nem zártam le a kapcsolatot, hanem küldözgettem egy próba szöveget.
Néhányszor átment, aztán néhány után újra kellett építeni a kapcsolatot.
Ez az újraépítés a lassú, nagyon. Ezért nincs ilyen gond az UDP-vel, mert ott nincs kapcsolat.
Az előbb írtam, hogy lehet telnetes irányban próbálkozok, mert ott percekig nem szakadt meg a kapcsolat, vagy WEB lap törzsében. Vagy fájlként, de azt nem tudom hogy kell, utána kellene nézni. -
Janos250
őstag
válasz
Dißnäëß #13250 üzenetére
Köszi!
Igen, a TCP kapcsolat felépítésének a lassúságára az Arduino alatt mások is panaszkodnak. Jó lenne az UDP is, mert nem gond a csomagvesztés, ezért is gondoltam erre is. Mivel ez nem egy állandó állomás, hanem havonta egy-két alkalommal odamegyek valahova,
mérek 10 percig, és ennyi, ezért nem nagyon akarnék erre külön néhánytízezres kütyüt, amikor a telefon úgyis ott van a zsebemben.
Viszont lehet, hogy mégis rákényszerülök.
Most még azon is gondolkodom, hogy az adatokat UART-on beolvasó ESP32-n WEB szerver, amiről a másodpercenként beolvasott
adatokat egyben HTTP-n keresztül megpróbálom leszívni a másik ESP32-vel, de ilyen, több kilónyi adatot egyben nem tudom hogy tudok
átvinni fájlként, de lehet, hogy WEB lapként, de akkor előtte - azt hiszem - karakteres formára kell konvertálnom a bináris adatokat. WEB lap törzsében már vittem át karakteres adatokat, azzal nem volt gond, az jól működött.
IPv6-ot még nem próbáltam ESP-n, de elvileg van. Azt se tudom, telefonon megy-e ez, ennek is utána kell néznem.
Régebben csináltam egy telnetes szervert, ami annyit csinált, mint egy MQTT szerver, hogy amit valaki küldött, azt továbbította minden bejelentkezettnek. Lehet, most is ezzel oldom meg, mert az látszólag jól ment, bár nagyobb adatmennyiséggel azt se próbáltam. -
Janos250
őstag
Köszi, de inkább ide írom, hátha valamikor más is érintett lesz.
Nincs http! Küldő oldalon ez van:if (client.connect(fogadoFel, 80)) {
client.print("proba \n");
client.stop();
}
fogadón meg ez:while(client.available()){
String line = client.readStringUntil('\r');
Ha a küldő oldalon nem zárom le, akkor is megszakad egy idő után.
Az elv:
A küldőre érkeznek adatok UART-on, minden egész másodpercben egy néhány kilóbájtos adag, ezt kell küldeni a fogadó fél számára, aki szintén továbbítja ezt UART-on a tetthelyre.
Neten keresgéltem, mások is panaszkodnak.
Lehet persze, hogy nálam a szinkronnal is van baj, majd próbálom a setTxBufferSize-al az UART pufferjét nagyobbra állítani. -
Janos250
őstag
Kinek van tapasztalata az ESP net elérésével?
Van egy ESP32, ami terepen mozog, és telefon net megosztásából érné el a netet. Ennek kell a netről folyamatosan 5-10 kilobájt/sec sebességgel adatot leszedni.
Ha TCP-n akarom, nem megy ekkora sebességgel, mert mindig lezárja a kapcsolatot, és az újra felépítése hosszú idő. Hiába próbálom úgy, hogy nem zárom le a kapcsolatot, mégis hamarosan lezárja. Rosszul csinálom?
UDP-vel elég nagy sebességet tudok elérni, viszont hiába van az adatokat folyamatosan küldő fél vezetékes neten, ha a fogadó fél mobilnetes megosztáson van, nem tudom oda küldeni neki. Lehet esetleg a mobilnetes megosztáson is port forwardot
megadni, hogy pl. az UDP-n érkező adatokat az ESP dobozkára küldje? -
Janos250
őstag
válasz
repvez #13230 üzenetére
Ha nem tévedek, a NEO6 sorozat csak GPS holdakat tudja venni. Ha leárnyékolt helyen vagy, kevés lesz a látott műhold. Nem tudja a Glonasst, a Beidout, a Galileot. Ezek Magyarországon láthatóak. Egyébként a pontossága is csak 1-5 méteres lesz, vagy még rosszabb.
Egyébként, ha nem akarsz alap dolgokat megtanulni "feleslegesen", akkor nehezen fog menni. Ha nem tudod, hogy kell a ciklusokat, a függvényeket, stb. megírni, használni, nem tudod a lábakat írni, olvasni digitálisan is, és analóg is, nem ismered mi a lokális, és mi a globális változó, mik a változó típusok, elég nehezen fog menni, könnyen sikerélmény helyett a sikertelenség élménye lesz.
A "mondják meg, hogy amit fel akarok találni, ahhoz mit kell megtanulnom, és majd feltalálom" szemlélettel nehéz lesz indulni. Én is csak azt tudom javasolni, hogy játszani kellene a dolgokkal.
-
Janos250
őstag
A verzió: (legjobb)
Keresnék egy több lábú kontrollertB verzió: (kevésbé jó)
PWM: a fő
gomb: NAGYON rövid időre átkapcsolnám inputra, és beolvasnám
led: betennék egy, a PWM-nél rövidebb idejű tüskét, és hardver [vagy egy másik kontroller] figyelné, ha elég rövid, akkor vált.
Az A verzióhoz ugye tudod, mit használnék?
-
Janos250
őstag
válasz
csongi #13182 üzenetére
A szerver maga a mikrokontroller, amibe beírod a WEB lap forráskódját, és ha pl. mobiltelefonon lekérdezed, akkor elküldi a telefonra, és a visszajövő választ értelmezi. Mindez neten.
Akkor olyan relé kell, aminek a meghajtó árama annyira kicsi, hogy a mikrokontroller meghajtja, mert ha nem, akkor oda is kell egy tranzisztor.
Ezért használok FET-et reléként, mert azt símán meghajtja, nem kell egyéb alkatrész, nincs benne mozgó, beégő csatlakozó, és többnyire még olcsóbb is, mint a relé.
-
Janos250
őstag
válasz
csongi #13175 üzenetére
Én a következőt csinálnám:
ESP32, + relék. Állítás neten keresztül WEB-en, az ESP a nethez a routeren keresztül kapcsolódik. Relé: szilárdtest relé jobb, de drágább.
Nincs se helyi szerver, se kínai, se app, csak a böngészőben WEB lap.
A programjába bele lehet tenni automatikus ki/be kapcsolásokat is.
Lehet, nem kínlódnék vele sokat, hanem a Sonoff 4 CH-ból vennék kettőt, és azt programoznám fel. Az ugyan nem ESP32, hanem csak ESP8266, de erre a célra az is tökéletes. Hasonlót DC48 V-ra csináltam, FET-ekkel, amatőr madzagolással, majd a nyáron akarom megcsinálni hozzá a panelt (JLCPCB), és 3D nyomtatni a dobozt. Azért 48 V-ra, mert mások is dolgoznak vele, és ha valamelyik lökött elkezdi szerelni, és agyonüti, mehetek a börtönbe. -
Janos250
őstag
válasz
csongi #13169 üzenetére
Egy kis filozofálás:
Arra, amire vannak jól kidolgozott módszerek, nem érdemes egymillióegyedikként mégegyet csinálni, hanem a bevált módszereket célszerű használni.
Ilyen feladatra a kínaiak Sonoff (switch on off) néven gyártanak kész, bedobozolt panelt.
Mire egyedi alkatrészekből összerakod, többe kerül, mint amit a kicsik nagy szériában legyártanak.
Ilyen feladatra tipikusan ez a bevált, 4 csatornás darab:
link
Minden komplett kész, be van dobozolva, nincs más dolgod, mint a vezetékeket csatlakoztatni. Utána ugyanúgy nekiállhatsz programozgatni, mintha egyedi alkatrészekből raktad volna össze.
Vagy ha nem akarod programozni, bótilag van benne kész szoftver, amit én ugyan még soha nem próbáltam, de sokan dicsérik, használják.
Én vagy saját Arduino programot teszek bele, vagy a Tasmotát teszem rá, ami persze szintén Arduino program. Az utóbbi időben már csak a Tasmotát.
Nagyon jól kidolgozott rendszer, ha nem akarod, nem kell a program változtatásával bíbelődni. Bekapcsolás után, ha akarod WEB lapon keresztül beállíthatod.
Időzítést és komolyabb dolgokat csak akkor tud, ha vagy saját programot teszel rá, vagy teszel mellé egy MQTT szervert (málna).
Ennek is megvannak a saját, jól bejáratott módjai.
Ha hang vezérlést is szeretnél, akkor pl. Alexa.
Azt mondod a telefonodnak, hogy "Alexa, turn on kisszivattyú", és bekapcsol a kisszivattyú.
Valahogy így:
"You can ask Alexa to turn on/off Sonoff 4CH R2.
Standard voice control commands phrases (if you just say the device name, Alexa will turn on/off all the 4 gangs immediately):
Alexa, turn on {deviceName}
Alexa, turn off {deviceName}
Alexa, turn on {deviceName} {gangName}
Alexa, turn off {deviceName} {gangName}
The default names for the 4 gangs are: outlet 1, outlet 2, outlet 3, outlet 4. You can change the name if you like.
Explanation: if the device name of your Sonoff 4CH R2 is "My Switch", the gang name is "Outlet 1", then you can control with "Alexa, turn on My Switch Outlet 1". "
Mindezek készen vannak, csak válogatni kell, és a kész a legolcsóbb.
Ha programozást akarsz tanulni - mert az jó dolog - ugyanúgy lehet ezeket is programozni. Arra egy Sonoff basic a legjobb, legolcsóbb szerintem (mint már előttem javasolták is). -
Janos250
őstag
-
Janos250
őstag
válasz
Tankblock #13084 üzenetére
Szerintem igen, bár még nem használtam. Majd aki használni akarja, lehúzza magának. A CAB busz OC. Ha nem az lenne, nem működne a prioritás.
A CAN buszt nem ismerők kedvéért: a buszra először az állomás kódját kell kiküldeni. Ha több állomás jelentkezne egyszerre, a prioritás dönt. Ha a kódban az első néhány bit meg is egyezik, azé az elsőbbség, akinek a kódjában az első különbözö bit alacsony. Ezt a másik is érzékeli, és abbahagyja az udvarlást. -
Janos250
őstag
Mindenki csak azt tudja megmondani, hogy hogyan lehetne az adott problémát megoldani, amit ismer.
Én nem tudom megmondani, hogyan lehetne pl. Attynivel megoldani mert nem ismerem. Én csak ezt ismerem valamennyire.
Többen többfélét ismerünk, mindenki elmondja hozzá amit ő ismer, és a kérdező vakarhatja a fejét. -
Janos250
őstag
válasz
gyapo11 #13063 üzenetére
Mivel kis méretekben akarjátok használni, ide most nem passzol, ezért is teszem offba, de azért megjegyzem, hogy az ESP32 (ugye kitaláltátok
) RMT az a Remote Controller rövidítése. Azért nem passzol ide, mert elég nagy, és azt biztosan nem tudja, amit írtatok, hogy a zavaró fényeket ne vegye figyelembe. Viszont, ha adni akarunk, megadjuk a vivőfrekit, és a mintát (64 byte, vagy ennek max nyolcszorosa ), és adja ameddig akarjuk, akár végtelenségig
-
Janos250
őstag
válasz
atesss #13048 üzenetére
Működik az akkor is, ha leveszed a búrát, csak kevésbé érzékeny, de egy ember elhaladását biztosan érzékeli.
Pontosan ennek a típusnak nem szedtem le a búráját, búrával prímán működik, de egy másik, kisebb típusból több példány is kiválóan
kapcsolja a ledszalagot ember közelítésére levett búrával.
link
Elég lapos, konkréten a led sínekbe vannak berakva a led szalagok végéhez. Viszont ezt 12V-os ledekhez gyártják, nem próbáltam, megy-e kisebb feszültséggel.
Ez meg kisebb:
[link]
Ezekkel is szemeztem már, de ezeket nem próbáltam:
link
link
Az infrakapu és a "radar" is jól működik, de azokat csak kipróbáltuk, üzemszerű használatba még nem kerültek. -
Janos250
őstag
válasz
gyapo11 #13040 üzenetére
Azért a nagyobb áramokra inkább a LiFePo (lítium, vas, foszfor) akkuk a jobbak, bár ezeknek kisebb a kapacitásuk, és a feszültségük is valamivel kisebb. Régebben itt valaki ajánlotta ezeket a kisebb feszültségük miatt 3.3 V-os lapok meghajtására konverter nélkül, de már nem emlékszem, ki.
-
Janos250
őstag
válasz
Dißnäëß #13037 üzenetére
A 18650-est biztosan te is ismered, csak nem tudtad eddig, hogy így hívják.
Tulajdonképpen a méretet jelenti (18 mm vastag, és 650 tized mm, azaz hat és fél centi hosszú)
Jelenleg ez a legelterjedtebb Li akku "háztartási" használatra.
A piacok is tele vannak vele, ahol árulják az átverős példányokat, de az ebay-en, meg hasonlókon is lehet fake példányokat venni.
Én például a napokban tettem fel kapacitást mérni egy ilyet, amire az van írva, 6800 mAh, és 300-at tud.
Jelenleg a jobbak kb. 3000 mAh-t, vagy egy kicsit többet tudnak, amire ennél lényegesen nagyobb van írva, az mind átverés.
Igen, a protectedet célszerű venni, mert nem szabad egy bizonyos szint alá kisütni, és amiben van védelem, az ezt biztosítja.
A védettek + végén látszik, a "csomagoláson" keresztül, hogy egy kis gyűrű alakú rész van benne, mintha egy 2 forintos lenne ott.
A feszültségük nagyjából egyforma, kapacitásuk mint írtam, max 3000 mAh, de nagyon sok a fake.
Én például ezeket vettem.
link
Nem olcsó, de tényleg valamivel 3000 mAh felett van a kapacitása, lemértem. Látszik a felső fekete résznél, hogy nem sima, ott van a védő elektronika panel. Én ezeket használom a kütyüjeimhez.
Vettem hozzájuk
ilyen
vagy hasonló tartót. -
Janos250
őstag
Még egy megjegyzés a kínai csomaghoz, hogy többek között ezért is érnek ide olyan lassan. A nyomkövetésben:
"May 19, 2020 04:00 Package has been sterilized and shipped out. "
Persze még nem ért ide. -
Janos250
őstag
Ezen meg 14 $-ért pár nap alatt UK-ból, szintén Arduino ESP32, van rajta egy kicsi kijelzőn kívül 18650 litiumos akku foglalat is.
link -
Janos250
őstag
-
Janos250
őstag
válasz
Dißnäëß #13024 üzenetére
"Csak tudnám, mire használjak egy 320x240-es touchscreen-t."
Régebben nekem is voltak olyan elképzeléseim, hogy minden kütyühöz teszek touchscreen-t. Aztán úgy döntöttem, hogy nem kell mindenhez külön, hanem van egy darab fullHD touchscreen-em, mindenhez ezt használom. WiFin WEB lapot küldök rá, és a WEB-en lévő gombokkal vezérelem a dolgokat, illetve a touchscreen-es szerkentyűre
írom ki az adatokat, pl szenzorok mérési eredményei. Ez bevált, és azóta tényleg mindenhez ezt az egyetlen képernyős szerkezetet használom.
Úgy hívják, mobiltelefon. -
Janos250
őstag
Aki ért az ilyen modulokhoz! A LM2596HV chippel működők azonkívül, hogy nagyobbak, alacsonyabb frekin működnek. Mi az előnye, hátránya pl. ennek, az 500 kHz-en működőnek az előbbivel szemben azon kívül, hogy ez jóval kisebb, mégis nagyobb az árama. Viszont nincs se bemeneti polaritás, se kimeneti rövidzár elleni védelme, az LM2596HV modulokkal szemben.
Még egy dolog: nem nagyon bízok azokban, amiken potival kell beállítani a feszültséget. Eléggé időtállók azok? -
Janos250
őstag
Egy kérdés a gyakorlottabbakhoz:
Ti a táp ügyben a hülye user elleni védelmet hogyan oldjátok meg?
Egy panelomon ilyen DC/DC konverter van.
Hiába tudom, hogy a bemenet max 26 V lehet, véletlenül 48V-os tápot dugtam rá. Természetesen tönkrement, de nem úgy, hogy akkor nem ad ki semmit, hanem továbbadta a 48V-ot, és tarolt mindent
Milyen biztonsági elemet célszerű berakni? 5W-os, 3.6 V-os zenerre gondoltam, meg biztosítékra, meg talán a bemenetre diódára.
Vagy tud valaki ilyesmi méretű, áramú panelt, ami magasabb voltot is bir? Az LM2596HV chippel működők 50 V-ig működnek, de azok meg elég nagy fizikai méretű panelok, és alacsonyabb frekin dolgoznak.
Tud valaki jó megoldást? -
Janos250
őstag
válasz
atesss #13009 üzenetére
Ezt bizony, neked kell implementálni szoftveresen. Már csak azért is, mert így lesz igazán egyedi az algoritmus, amivel generálod. Nem okoz kockázatot a megnyomod N-szer, mert ugyanolyan generált kódokat küld, és ha nem olyan érkezik, ami megfelel az algoritmusnak, hogy az előző N-ből van generálva, akkor azt csak letárolja, de nem hajt végre semmit. N nyomás után már igaz lesz, hogy az előző N darab letároltból van generálva az új, tehát valid, végrehajtható. Ha valaki összevissza küldözget kódokat, soha nem felel meg a követelménynek.A biztonsági kockázat annyi, hogy ha kiolvassa az általad küldött kódot, de előtte letilt a netről, hogy ne menjen ki a kód, akkor az így kiolvasott kód valid lesz, mert a vevő nem tudhatja, hogy mi történt. Vagy ha sokszor nyomogatod, ellop N+1 db. egymás utáni kódot, és N-e szinkronizál, az N+1-el meg nyit. Ezért az autóknál valahogy másként oldják meg, hogy a vevő azt is tudja, hogy hol tart a dolog, és a már használtakat nem fogadja el, de nem tudom, hogyan csinálják. Persze erre is lehetnek megoldások. Valahogy így lopják el az autókat, hogy valaki odamegy a kocsi mellé, fehérzajjal elérhetetlenné teszi a kocsi elektronikáját, közben olvassák a kódot. Részleteket nem tudok, mert nem szoktam autót lopni.
-
Janos250
őstag
Egyszer itt már írtunk az amatőr szintű ugrókódos biztonságról.
Minden kérésben küldesz egy változó kódot, amit az előző N db. kódból generál egy általad kitalált, de elég bonyolult algoritmussal. A vevő ugyanezzel az algoritmussal ellenőrzi, ha a kód nem stimmel, nem hajtódik végre semmi. Szinkron elvesztése esetén "megnyomod N-szer egymás után a távirányítót", és helyreáll a szinkron.
Ez Pistikének is, és Szergejnek is elég nagy fejtörést okoz.
Ezt persze célszerű nem közvetlenül az eszközökre küldeni,
hanem egy erre dedikált lapnak [természetesen valamiféle Arduino, pl. ESP32], ami ellenőrzés után továbbítja a külvilágtól elzárt MQTT-nek, aki majd továbbküldi az illetékesnek.
-
Janos250
őstag
"MAC címet elég könnyű hamisítani"
Ha én a küldő fél programjába beleírom, hogy küldje el a MAC címét, azt azért nem olyan egyszerű hamisítani."SMS-be olyan számot írsz, amilyet akarsz"
Nem így működnek. Ha küldesz egy SMS-t, a SZOLGÁLTATÓ küldi azt a telefonszámot is, amiről feladták. Persze, ha engedélyezve van. Így jelzi a telefonod is, hogy ki adta fel. Ezt kell olvasni, ennek a hamisítása tudomásom szerint nem olyan egyszerű."Arduino, txt file : nem tudom, mire gondolsz azzal, hogy abban kapod, ami a hálón jön."
Például erre (ez ugyan UDP, de most éppen ez a fejlesztői prg. van benn a megnyitott IDE-ben, de ugyanígy megy TCP-re is, de nem akarok most keresgélni, ez meg copy-paste )int packetSize = Udp.parsePacket();
if (packetSize) {
Serial.print("Received packet of size ");
Serial.println(packetSize);
Serial.print("From ");
IPAddress remoteIp = Udp.remoteIP();
Serial.print(remoteIp);
Serial.print(", port ");
Serial.println(Udp.remotePort());
// read the packet into packetBufffer
int len = Udp.read(inputBuffer, 800);
if (len > 0) {
inputBuffer[len] = 0;
}
Serial.println("Contents:");
Serial.println(inputBuffer);
};
Na, ha ezek után a hekker kitalálja a messzi távolból, hogy én hogyan fogom elemezni azt, ami az inputbuffer tömbben van, akkor megérdemli, hogy betörhessen.Ezt a programot mellesleg azért is copyztam be, hogy ha valaki ilyesmit akar csinálni, lássa, hogyan megy. Mondhatnám, tutorial.
"egy 328-on is lehet veremtúlcsordulást csinálni"
Könnyen meglehet, hogy az oprendszernek van veremtúlcsordulási hibája, és mivel nyílt, ezért azt bárki megtalálhatja.
Ehhez - ismeretek hiányában - nem tudok érdemlegeset mondani. -
Janos250
őstag
A biztonság kérdéséhez én ennyit tennék hozzá:
Ami Arduinora bejön netről, azt én egy txt fájlként kapom meg, és az én dolgom, hogy mit csinálok vele. Vagy saját magam elemzem, vagy rábízom egy valaki által megírt programra. Én az előbbit követem.
Ha nem azok közül jön be valamelyik, amiket várok, akkor ejtem a dolgot, mondván, hibás kérés jött. Persze a túlterheléses támadás kivédhetetlen, akkor addig elérhetetlenné válik az eszköz.
Vannak módok, amivel lehet növelni a biztonságot. Például lekérhetem a küldőtől akár az IP-jét, portját, MAC címét, stb. , és ez alapján szelektálhatok. Vagy ha SIM-es eszközt használok, akkor lekérhetem a küldő telefonszámát, és csak a számomra szimpatikusat fogadom el.
Ez már elég jó biztonságot ad, nem véletlenül használják kapunyitó, meg egyéb funkcióknál. Nem feltétlenül növeli a telefonszámlát, mert pár csöngetés után megszakít, anélkül, hogy "felvenné".
Lehet SMS-el is vezérelni, de az pénzbe kerül. Ott is a küldő telefonszámának ellenőrzése ad elég nagy biztonságot. -
Janos250
őstag
válasz
atesss #12959 üzenetére
Külső memóriát én egyikhez se kapcsoltam, ezt a részét nem ismerem.
SD kártyát használok, link
Az általános "Arduinoként" hirdetett modulokta természetesen minden Arduino kompatibilis lap tudja használni.
Az, hogy az UNO-hoz hasonlóak "stackelni" lehessen a modulokat ESP-re is, az ritka, mert
nem egy szigorúan rögzített lábkiosztásról van szó, mint az UNO-nál, hanem gyártótól függ, bár többnyire nagyon hasonló.
Ezért csak az adott termékhez az adott gyártótól származó shield dugható rá közvetlenül.
Olyat, amit linkeltél, nem tudok. -
Janos250
őstag
válasz
Dißnäëß #12960 üzenetére
"hanem a C++ egy heréltjét látom ha minden igaz, az Arduino-k default nyelvét,"
Én úgy gondolom, hogy nem teljesen. Nem egy herélt verzió, hanem egy korábbi C++ BŐVÍTETT verziója, ami ki van bővítve egy halom
osztállyal, konstanssal, rutinnal, miegymással, hogy passzoljon az Arduinohoz is.
Lehet tévedek, mert a 8266-ot rég nem használom, de a 32-n BIZTOSAN így van. A C++11-ig bezárólag tudja a dolgokat,
a szokásos szabad fordító fordítja, nem egyéb Arduino fordító.
Hogy mi megy még rajta, azt nem tudom, mert nekem a C++ elég, nem akarom keverni, kavarni. -
Janos250
őstag
Tegnap órákon át az ESP32 lapot (mint mindig) nyüstöltem. A végén vettem észre, hogy az FTD232RL-t elfelejtettem 3.3 V-ra állítani, így a GPIO lábakra 5V jelszint ment. :-( Szerencsére nem vette rossznéven az ESP32, de lehet, hogy ezt nem mindig így teszi.
Még jó, hogy a tápot máshonnan kapta, és az 3.3 V volt. -
Janos250
őstag
válasz
atesss #12946 üzenetére
A 8266-ban nem emlékszem, már mi van hardverben, de ESP32-ben rengeteg. Aki most veszi, annak én mindenkinek az ESP32-t szoktam ajánlani, de ezzel nem mindenki van így. Az ESP8266-ha írott lib-ek, programok általában változtatás nélkül is mennek rajta.
Nekem is tetszik az a kis kamerás modul. Tűrhető képe van, egyszer régen tettem is fel mintaképet, úgy emlékszem.És I2C, vagy I2S ?
-
Janos250
őstag
-
Janos250
őstag
Egy régi project dobozomban találtam egy Mega 2560-at. Gyorsan ki is próbáltam. A mintapélda fut rajta, bár az xTaskCreate második paraméterében - az egyébként tök fölösleges - idézőjeles név elől az átdefiniálást törölni kellett.
Ezen felbuzdulva próbáltam rákeresni, hogy C++11 ügyben mi újság. Azt írják, hogy támogatja, de ez a támogatás meglehetősen gyér. Pl. egyből elakadt a fordítás a thread-en és a cout-on is. Pedig a cout nem egy ritka jószág.
Az ESP32-n nincs gond, az arduino IDE alatt fordítva, ezek (is) simán mennek. -
Janos250
őstag
Kíváncsiságomat kielégítendő, ha már mindenki tudja, hogyan működik a delay() (csak én nem), gondoltam, megnézem.
Ezt találtam az Arduino\hardware\arduino\avr\firmwares\wifishield\wifiHD\src\SOFTWARE_FRAMEWORK\SERVICES\DELAY\delay.c fájlban:void delay_ms(unsigned long delay)
{
#if (defined FREERTOS_USED)
vTaskDelay( (portTickType)TASK_DELAY_MS(delay) );
#elif (defined NUTOS_USED)
NutSleep(delay);
#else
cpu_delay_ms(delay, s_fcpu_hz);
#endif
}
Hm! freeRTOS az AVR chipeken arduino rendszerben?
Igen.
https://create.arduino.cc/projecthub/feilipu/using-freertos-multi-tasking-in-arduino-ebc3cc
Valóban így van. A könyvtár kezelőben/Library manager, Hozzáadott/Contributed, időzítés/Timing alatt valóban ott van a FreeRTOS Real Time Operating System implemented for AVR (Uno, Nano, Leonardo, Mega)
Kipróbálni nem tudtam, mert az AVR chipes lapjaim már nyugdíjba vonultak a vidéki házamba, de ha tényleg tudja, ez azért nagyon sok új lehetőséget jelent! Például a multitasking!
Valaki próbálta már a FreeRTOS-t AVR-en? Mi a tapasztalat? -
Janos250
őstag
Néha elég nehéz segíteni, és azt tekintik hü...nek, aki segíteni akar. :-( Valahogy így vagyunk itt is, nem hiszem, hogy érdemes vele többet foglalkozni.
Két történet:
1.
Egyszer egy kolléganőnek összeraktunk egy egészen jó gépet, a régi öregecske helyett.
Átjött egy másik irodából egy másik kolléganő, hogy megmutassa egy helyi adminisztrációs program működését.
Ahogy leült a gép elé, egyből fel is kelt:
"Mondd meg a főnöködnek, hogy ne sajnálja a pénzt, vegyen neked egy jobb gépet, ne ilyen sz..t! Amit nekem vett az én főnököm, azon itt az asztalon van excel ikon"
2.
"Ez a gép még rosszabb, mint a régi, mert nincs rajta startlap, ezen nem lehet netezni. Kellene vagy a régi vissza, vagy egy jobb gép". (A böngészőben induló képernyőnek nem a startlap pont hu volt beállítva) -
Janos250
őstag
"Definiáld globálisként, azaz a setup() és loop()-on kívül."
Valóban ez a megoldás, ez nem tessék-lássék!
Van egy szint, ami alatt ez nem érthető, de akkor azt kellene mondani, hogy bocs, srácok, most lezdek programozni, írjátok le szájbarágósabban, mit is jelent ez. Nem értem mi az, hogy globálisként a setupon és loopon kívül.
"a kód konkrétan egy az egyben nem is működött amit írtál"
A program kipróbálás nélkül általában nem működik. A környezetében kipróbáljuk, megkeressük a hibákat, és javítjuk. Kiváncsiságból megnéztem azt a kódot. Ránézésre én se találtam benne hibát. Konkrétan mi volt benne a hiba?
"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"
Akkor mindenki rosszul tudja, mert ez kontroller, és a rajta futó szoftver függő. Az ESP32-nél például egyértelműen átadja a vezérlést e következő tasknak, és élünk is ezzel.
"Most meg bedobod, hogy globál variable jellegbe csináljam... Tök jó, másképp hogy is tenném ?"
Akkor meg mi volt a kérdés?
Az utána írtakat meg nem sikerült értelmeznem, de majd próbálkozok.
"Inkább tanulj" Ha elolvassuk a címzett eddigi hozzászólásaiból párat, akkor ezen csak ... na, mindegy.
Szóval, Weiss barátunk, tanulgass, még egy kicsit! :-) :-)
"képtelenek vagytok még egy Blink szintet is segíteni neki, csak az arcába dobjátok az embereknek, hogy milyen hülyék...
Ha nem tudtok, nem akartok segíteni, akkor ne tegyétek... de ne szívassátok az embert !"
Na, pont ez nem jellemző erre a topicra. Itt éppen nem divat az "olvasd el a specifikációt" válasz! -
Janos250
őstag
Na azért az ESP32-nek az előnyei mellett, vannak gondjai is.
Most például a readString() bosszantott. A Stream.h-ban ott van benne, hogy "virtual String readString()". Ami ugye azt jelentené, hogy az ő gyerekeiben kell kifejteni. Igen ám, de a HardwareSerial.h - , HardwareSerial.cpp-ből meg kihagyták.
Így lefordítja, de futásnál hibajelzés nélkül kiakad. Jó, persze nem létszükséglet, van elegendő más függvény rá, de azért megcsinálhatták volna. A sztring kezelés egyébként is eléggé fejvakarós: C típusú, C++ típusú, Arduino típusú sztringek. Melyikben mi hogy is van! -
Janos250
őstag
válasz
Dißnäëß #12862 üzenetére
Jó az az ESP.
Két verziója van, az ESP8266, illetve az ESP32.
Ez az egyszerűbbik, az ESP8266.
Ami a panelon látszik, az a fém borítású tégla, az egy hibrid panel. Ennek több verziója van, manapság legelterjedtebb az ESP12, ami ezen a panelon is van. Benne van az ESP8266, a memória, és még ez-az.
Ugyanúgy Arduino rendszerben (is) használható, mint a többi, pl. az UNO. Nagyon közkedvelt a használata az IOT , háztartási okos eszközökben, pl. okos konnektor, okos kapcsoló, stb. Ezekben többnyire egy fizikai méretében pincurkára tömörített verziója található, 1M memóriával. WEB szerverként (AP), és kliensként(ST) egyaránt használhatók. PHP-t nem tud, de a PHP filozófia szerint használjuk.
Mert ugye a PHP filozófiája, hogy programból elkészítünk egy html szöveget, amit aztán neten elküldünk. Ezzel is azt csináljuk. Le tudjuk kérdezni, ha AP-ként használjuk, hogy az ST pl. milyen get, vagy post kérést küldött, és annak alapján állítjuk össze a választ.
Például, ha szenzorok adatait akarod egy WEB lapként elküldeni, akkor egy sztringbe belerakod a WEB lap alapvető kezdő dolgait, sztringgé alakítod a szenzor által mért adatot, appendeled a sztringbe, majd hozzá appendeled még a WEB lap végét.
Az így összeállított lapot elküldöd.
Ha ST-ként használod, akkor a szerverről kapott választ szintén sztringként kapod meg, amiből kiszeded a számodra hasznos infót.
Az okos eszközökben való használatra kidolgoztak egy eléggé univerzális programot. Tasmota a neve. Ebbe eleve bele van építve egy csomó szenzor kezelés. Amikor fut a program, WEB-en belépsz, és menüből állítod össze, hogy neked mi van rajta.
A szabad lába kevés, azzal spórolni kell. -
Janos250
őstag
válasz
tonermagus #12851 üzenetére
Van, ami csak 5 V jellel tud dolgozni. Megoszlanak a vélemények, hogy melyik ESP mit bír. A legáltalánosabb vélemény az, hogy az ESP8266 adat lábai 5V toleránsak, de az ESP32 nem. Bár ez utóbbira is van, aki azt mondja, hogy bírja, de többnyire azt mondják, hogy nem. Nem akarok próbára 5V-ot adni valamelyik bemeneti lábára
-
Janos250
őstag
válasz
tonermagus #12848 üzenetére
Szerintem igen!
-
Janos250
őstag
válasz
tonermagus #12847 üzenetére
"Ti egyébként többnyire ESP-vel játszatok, nem is Arduinoval?"
De, arduinoval. ESP chipet tartalmazó arduinoval!Én igen, én ESP32-vel játszadozom. Van 5V-os táp bemenete is a lapok többségénak. Az esetleges gond nem is a táppal van, hanem, hogy a hozzá kapcsolt szenzorok mit tudnak.
"Teljesen megszoktam az Arduino library rendszerét."
Az ESP lapokat is beillesztették az arduino rendszerbe, ezért a megszokott dolgok UGYANÚGY mennek általában, változtatás nélkül.
Összesen annyi a teendő, hogy az arduino IDE-ben másik lapot jelölünk ki, nem az UNO-t (pont ugyanúgy, mint ha pl. megát akarnánk UNO helyett). A különbség annyi, hogy pluszként mennek a C++ szabványos utasításai is. Pl. cin, printf, párhuzamos futtatás, stb.
Az ESP32-nél azért az sem elhanyagolható, hogy KETTŐ teljesen független fizikai mag van benne, így, ha valami időkritikus, akkor azt rakjuk az 1-es magra egyedül, minden egyéb meg mehet a nullásra. -
Janos250
őstag
válasz
tonermagus #12843 üzenetére
Persze a választott LED-nek is lehet előnye: Ha szigorúan csak egyforma színnel akarod az összes pixelt hajtani, akkor az tényleg egyszerűbb, mert egyetlen utasítással állítod be az összes LED színét, míg a WS2812-nél akár egyforma, akár nem, mindenképpen ki kell küldeni minden egyes pixelre a színkódot.
Azt szerintem mindenki tudja, melyik lapra gondoltam.
De az STM32-k is elég komolyak. A hely probléma: hát, az UNO éppen, hogy eléggé túlméretes.
FET: ha még nem vetted meg, arra figyelj, hogy a gate küszöbfeszültsége elég alacsony legyen! A neten tömegével van az IRF540, pl.
link
de én inkább az IRL típusokat szoktam mindenkinek javasolni, mert azok alacsonyabb feszültségen nyitnak, későbbi esetleges fejlesztés során elmegy 3.3 volttal is. (persze más is van, alacsony nyitófeszültséggel, de én ezeket használom)
Mérethez még: azért ez sem egy túl nagy méret:
link
Ez meg még kisebb, és pluszban kapsz mellé egy kamerát, meg van rajta SD kártya hely is.
link
Vagy ez is elég kicsi. UNO-hoz képest meg különösen.
link
Vagy ha még egy displayt is akarsz rá, akkor:
link
Szóval választék van bőven! -
Janos250
őstag
válasz
tonermagus #12840 üzenetére
"A LED vezérléssel minden ok, de a szervó elkezd izegni-mozogni. ÉS ez elvileg jól ismert probléma a WS2812-nél"
Ez nem a WS2812 problémája, hanem az egyszerű kontrolleré.
"A gond akkor kezdődik amikor mellette még Szervót is vezérlek."
Mert a lap nem bír annyit, nem a WS2812 zavar be! Ezért mondtam, hogy inkább a lapot kellett volna upgrade-elni, nem a ledet downgrade-elni.
"Az 5050-nek van valami hátulütője?"
Nincs semmi, persze, de a WS2812-höz nem kell FET, mert külön lábon megy a táp, és külön a vezérlés. És persze sokkal többet tud. -
Janos250
őstag
válasz
tonermagus #12831 üzenetére
"de a megszakításkezelés botrányos. Iszonyat nagy erőforrás kell neki. Így váltottam 12V-os 5050 chipsetes RGB LED-szalagra."
Véleményem szerint nem biztos, hogy jó irányba váltottál! A LED helyett az arduino lapot kellett volna egy erősebb arduinora váltani. Éppen tegnap játszottam egy 300 pixeles WS2812-vel, elég nagy sebességgel kezelhető, folyamatosnak látszik a mozgás. Egy lappal 8 db. WS2812 kezelhető függetlenül, akár külön programmal. -
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) -
Janos250
őstag
válasz
gyapo11 #12816 üzenetére
Nekem is kell előbb-utóbb grafikonokat csinálni, hogy egy szenzoros arduino szerverhez (természetesen ESP32
) kapcsolódva a telefon kirajzolja a mért adatokat. Az a bajom ezekkel a chart rajzolókkal, hogy a megjelenítő gépen/telefonon megákat akar letölteni netről. Ha nem kapcsolódik a nethez, nincs ábra. Én ezért jelenleg inkább abban gondolkodom, hogy svg ábrát csinálok. Kicsit zöld, kicsit savanyú, de...
Már használtam az svg-t arra, hogy koordinátákkal megadott sokszögeket, szövegeket, miegymást rajzoljon ki. Egyszerű, rövid, tömör, könnyen megtanulható.
Például egy link annak, aki nem ismeri:
link -
Janos250
őstag
Egy kis morgolódás:
Nagyon jó dolog az, hogy a kis kínai (JLCPCB) a megrendelés után két nappal már csomagolja is a mondhatni fillérekért készre
gyártott panelt, de mi az értelme, ha a posta ül rajta!Április 25-én este feladtam neten a rendelést.
Április 27-én, azaz kettő nappal később már kész.
Április 28-án feladták.
Május 10-én megérkezett Ferihegyre. Azóta ott vár sorsára.
Kedves VÁM, posta, miegymás! Nem kellene egy kicsit csipkedni magatokat? -
Janos250
őstag
válasz
Janos46 #12781 üzenetére
Arduino IDE-ben file menü, beállítások, További alaplap-kezelő URL-ek
Ide beírod:
https://arduino.esp8266.com/stable/package_esp8266com_index.json
Utána eszközök, alaplap, alaplap kezelő
kereső mezőbe ESP, akkor megjelenik az ESP8266
Installálod.
Letölt netről mindent ami kell, a keresett header fájlt is.
Itt találod meg: (nálam a portable verzió van)
portable\packages\esp8266\hardware\esp8266\2.6.3\libraries\ESP8266WiFi\src\ESP8266WiFi.h -
Janos250
őstag
Egyszer nekem is kellett volna, akkor én ezt néztem i magamnak:
https://www.chartjs.org/samples/latest/
Aztán végül mégse került rá sor, ezért kíváncsian figyelem, mi jót találtok, mert előbb-utóbb nekem is kelleni fog. -
Janos250
őstag
válasz
Volkov #12752 üzenetére
pl: (persze, ha elég gyors hozzá a proci)
külső ciklus
énbájtom = 0
ciklus i=0-tól 7-ig
ciklus, amíg digitalread órajel alacsony ciklusvége
ha digitalread magas,
énbájtom i. bit legyen egy
//( bitwise xor, vagy bitset )
// de lehet, hogy 7-i, nem i
ha vége
ciklus, amíg digitalread órajel magas ciklusvége
i ciklus vége
énbájtom letárolása tömbben, vagy kiíratás, vagy mittudomén...külső ciklus vége
-
-
Janos250
őstag
válasz
KFORboy #12741 üzenetére
Na, akkor egy kicsi részletesebben:
Az arduino rendszer nyelve a C++ . A szabványos, szabad felhasználású fordítót használja,
viszont az arduinoban vannak olya spéci dolgok, amiket így kapásból nem ismer a C++
Ezt úgy hidalták át, hogy csináltak egy csomó könyvtárat, ami ezeket megvalósítja.
Tehát mi kell ahhoz, hogy egy új kontrollert illesszenek a rendszerbe?
Kell hozzá először is a megfelelő C++ fordító, ami az adott kontroller saját gépi nyelvére fordít.
Ahogy nagyjából rátekintettem az irodalomra, ilyet én nem láttam, csak síma C fordítót.
Továbbá passzítani kell hozzá az arduino spéci dolgait, például, hogy tudja, mi az a Serial, stb.
Ezek a passzítások bizony helyet foglalnak a memóriában. Ennek a kontrollernek viszont NAGYON KICSI mind a proram, mind az adat memóriája. -
Janos250
őstag
válasz
Mosqu!to #12721 üzenetére
Közben megnéztem, hogy te normál motorokat akarsz meghajtani, és csak egyetlen irányban. Na, ami motorvezérlő ott van, azt nem erre a legegyszerűbb feladatra szánják. Én oda simán FET-et tennék. Motoronként egyet. Az újabb FET-ek között számos olyan van, ami TTL szinttel meghajtható. (Sőt, én ESP-vel hajtom őket, ami 3.3 V-os)
-
Janos250
őstag
válasz
Mosqu!to #12713 üzenetére
Közben egy kiegészítés. Egyre többen azt pletykálják, hogy a vírus miatt a külföldről érkező csomagokat szándékosan várakoztatják két hétig, és csak akkor nyúlnak hozzá kézzel. Nem tudom igaz-e, de nekem is van egy csomagom, ami 11-én érkezett be az országba, és azóta nem mozdul. Vagyis a szállítási határidő akár hosszú is lehet jelenleg.
-
Janos250
őstag
válasz
KFORboy #12707 üzenetére
Na, legalább tudom, hogy dropship a neve ennek a mocskos üzletnek, amit a V....n is sokan csinálnak, hogy semmi mást nem tesznek, mint a tőled duplán elkért árért megrendelik e te címedre és nevedre az adott cikket ebay-ről, Aliról, vagy akárhonnan, mellesleg az ingyenes szállításért is felszámítanak egy-két ezrest, mondván, hogy külföldön van a boltjuk.
-
Janos250
őstag
válasz
KFORboy #12707 üzenetére
Én régebben vásároltam tőle, korrektnek tűnt. Egy bajom volt vele, hogy az Örs környéki sokemeletes házakban alig találtam meg azt a lépcsőházat, ahol van.
Ha jól emlékszem, a hobbielektronika fórum saját boltja.
Igen, a webshopok néha nagyon átverősek. Én is vettem 35 ezerért szivattyút, ami kapásból rossz volt. Fizetni a futárnak kellett készpénzben. Az eladóról semmit nem tudtam meg, csak a hirdetett telefonszámát. A futár cég nem volt hajlandó megmondani, ki az illető. Azt mondták, nem tudják, pedig csak tudták, kinek kell a pénzt odaadni. Azóta is hirdet ugyanazzal a telefonszámmal, változó névvel, várossal.
Annyit sikerült kiderítenem, hogy valami lengyel webshopból rendeli meg az én nevemre.
Azóta akkor sem rendelek olyan webshopból, ahol nincs személyes átvételi lehetőség, akkor se, ha futárral akarom hozatni. -
Janos250
őstag
válasz
Mosqu!to #12697 üzenetére
Ha sürgős, Pesten ma, vagy holnap tudok kölcsön adni UNO R3-at, amíg a tiéd megérkezik. El nem adom.
Nagyjából ez:
https://www.aliexpress.com/item/1727276268.html
Ezer éve nem használtam. Más fajta itt Pesten nincs, mert pont a napokban vittem le vidékre pihenni a készletet. -
Janos250
őstag
válasz
Mosqu!to #12697 üzenetére
Én a Bangoodról szoktam vásárolni. Ha UK-ból kéri az ember, egy héten belül itt van. Én, ha mindenképpen UNO-t akarnék (nem akarok, mert gyakorlatilag ugyanannyiért sokkal korszerűbb is van, amin általában futnak az UNO-ra írt dolgok), akkor az alábbiakból választanék:
1.
UNO kábellel, 7 dollár
https://www.banggood.com/UNO-R3-ATmega328P-Development-Board-p-963697.html?rmmds=search&cur_warehouse=UK
2.
UNO + 4db A4988 driver blokk + shield, 12 dollár
https://www.banggood.com/Geekcreit-CNC-Shield-UNO-R3-Board-4xA4988-Driver-Kit-With-Heat-Sink-For-Arduino-Engraver-3D-Printer-p-1082323.html?rmmds=search&cur_warehouse=UK
Egy héten belül itt vannak. -
Janos250
őstag
EasyEDA és a hócipő.
Arra gondoltam, hogy az a baj, hogy ami libraryket csináltam, azt nem nulláról kezdtem, hanem más készet alakítottam, viszont a mm-coll váltás miatt egy picit elcsúsztak egyes furatok. Megcsináltam teljesen újra, mindent collban.
Pont ugyanazok az elemek vannak benne, mint az előbb, nem több.
Erre meg azt mondja:
"NetIncompletes.calculate_net_items: to many items"
Ilyet a Google se talál se egy o-val, se kettővel.
Van egy ilyen hibajelzés is:
"Wiring:read_net_id: String expected"
De hogy hol, mi, arról semmi infó. Átnéztem, de semmi olyasmit nem találtam, ami okozhatná.
Erre legalább Google ad találatot: a support azt javasolja, hogy csinálja meg kézzel a vezetékezést. Na, ezzel ki vagyok segítve. Akkor minek van autoroute, legalább egy részét megcsinálná!Na, de miért tudta korábban, és miért nem most?????
-
Janos250
őstag
-
Janos250
őstag
válasz
KFORboy #12669 üzenetére
Közben ráakadtam az arduino.cc-n az arduinos multitaskingre, hogyan lehet több loop. Mivel az arduino.cc-n van, nem mások által hozzábütykölt valami, hanem az EREDETI arduino része.
Van a mintában 3 loop:
loop(), loop2(), loop3()
https://www.arduino.cc/en/Tutorial/MultipleBlinks" // IMPORTANT:
// When multiple tasks are running 'delay' passes control to
// other tasks while waiting and guarantees they get executed."Meg lehet persze kerülni másként is. De minek?
-
Janos250
őstag
válasz
KFORboy #12662 üzenetére
Mint az előbb írtam, a te problémádra is a többszálú program lenne a legegyszerűbb, legjobban áttekinthető, és legbiztonságosabb megoldás.
void rutin1(){
Ha pinA aktív, akkor örülök, és teszem a tennivalót
delay(1000); // vagy akár 24 óra, van akinél több, vagy kevesebb
};
void rutin2(){
Ha pinB aktív, akkor meg az ilyenkori teendőket teszem
delay(1000);
};
void rutin3(){
Ha pinC aktív, akkor meg a C teendőket teszem
delay(1000);
};
Ezeket kell egymással párhuzamosan "egyszerre" futtatni.
Új hozzászólás Aktív témák
Hirdetés
- Kazy Computers - Fehérvár - Megbízható?
- Konteó topic
- iPhone topik
- Debrecen és környéke adok-veszek-beszélgetek
- exHWSW - Értünk mindenhez IS
- OLED TV topic
- Egyre csak fejlődik az AI, emberek tízezreit rúgja majd ki a BT
- sziku69: Fűzzük össze a szavakat :)
- Hobby elektronika
- Spórolós topik
- További aktív témák...
- Lenovo LEGION Pro 5 / Pro 7, Lenovo Yoga Pro gépek (RTX 4060 / 4070 / 4080 / 4090)
- Kingmax 1x2GB DDR2 800 RAM eladó
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RX 6600 8GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! ASRock B550M R7 5700X 32GB DDR4 512GB SSD RTX 3070 OC 8GB NZXT H400 fekete Enermax 750W
- MacBook felvásárlás!! Macbook, Macbook Air, Macbook Pro
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Liszt Ferenc Zeneművészeti Egyetem
Város: Budapest