-
GAMEPOD.hu
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
válasz fpeter84 #3107 üzenetére
Látom, Aliexpressről rendelted. Ott csak kártyával lehet fizetni, meg kell adnod a kártyád adatait. Elég biztonságos az Ali, vagy találtál valami más fizetési lehetőséget?
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Daszkalosz19 #3181 üzenetére
Nekem is lefordítja. Írd ide, mit ír ki hibaként, hogy tudjunk segíteni!
Továbbá:
Milyen Arduino panelt használsz? (pl. UNO, stb.)
Melyik verziót használod az Arduino környezetből? 1.6.9 jelenleg a legújabb, de a régebbiek is jók.
Ugye innen (https://www.arduino.cc/en/Guide/HomePage) töltötted le? (Találtam már a neten máshol berhelt verziót)
Az installálós, vagy a portable verziót használod?
(Portable attól lesz, hogy a zip fájlt egyszerűen kicsomagolod, és első indítás ELŐTT csinálsz benne egy portable könyvtárat. Ugyanott, ahol a többi könyvtár is van. Ő csinál magának a portable könyvtárban a programjaidnak egy sketchbook könyvtárat, ahova a programjaidat teszi. Indítani az arduino.exe indításával lehet. A portable verzió ide rakja a saját dolgait, és békén hagyja a dokumentumok könyvtárat. ELVILEG bárhova áthelyezve működik, és ha több portable verzió van egymás mellett, nem zavarják egymást.)Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Daszkalosz19 #3190 üzenetére
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Daszkalosz19 #3190 üzenetére
Hopsz, látom, igen, úgy van beállítva.
Akkor a következő lépés, hogy a file/preferences menüben berakod a pipát a
Show verbose output during részben a compilation elé.
Akkor igen szószátyár lesz, minden lépést kommentál, de akkor talán több látszik, hogy hol akad el.Azt gyanítom, hogy valami vagy hiányzik, vagy összekavarodott.
Lehet, hogy új letöltés lesz a vége.
Megpróbálhatod egy új letöltést, és a ha a portable verzióval használod, nem zavarja meg a már meglévő installáltat.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3199 üzenetére
"Nem fordul le a példa program" Nekem lefordul.
Beállítottad fordítás előtt az Arduino panel típusát? Pl. UNO
A .h header fájlokat nem találja, vagy mit?
A könyvtárakat nem kell átírni, hanem használni.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
-
Janos250
őstag
válasz Teasüti #3202 üzenetére
A /267 meg a B7h karakter, ami egy vesszős nagy E, vagy hasonló.
Tippjeim:
1. kicsomagolási, másolási hiba a fájlban.
2. valami olyan szövegszerkesztővel szerkesztetted, ami az ASC karakterek mellé még valami berak.Tehát a hiba azt jelzi, hogy nem ASC karakterek találhatók a fájlban.
Én nem látok az aplicationmonitor.h fájlban oda nem illő karaktereket.
Nálad valahogy nem jó ez a fájl.[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
-
Janos250
őstag
válasz Teasüti #3209 üzenetére
https://www.arduino.cc/en/Hacking/LibraryTutorial (a library készítést írja, de a végén az is le van írva, hova tedd, stb.)
[link]https://www.arduino.cc/en/Guide/Libraries
[link]aztán ha megnézel egy libraryt, látsz még benne ezt-azt.
library.properties néhány jellemző
keywords.txt itt adhatod meg, hogy miket milyen színnel jelöljön meg a keretprogram. "helyesírásellenőrzésre" jó
src könyvtárba kerülnek a .h és .cpp forrásfájlokbiztos még sokféleképpen jó, de így is működik.
[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Daszkalosz19 #3244 üzenetére
"Show verbose output during compilation
enabled in File > Preferences."Ha ezt bejelölöd, több mindent kiír, azt is, hogy hol keresi.
Ha nem ott, ahol van, akkor másold be oda (is)Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Hasonlót.
Mióta (1-2 éve) beillesztették az ESP8266-ot is az Arduino sorba, hogy ne csak AT parancsokkal lehessen programozni, ezek a célszerűbbek:
[link]
vagyÉn mindkettőt használom, meg vagyok velük elégedve.
Pl. hőmérséklet szenzort olvas, WEB szerverként konfiguráljuk és mobiltelefonról böngészővel olvassuk az értéket.
Az ESP8266 chip önmagában Arduino is, jobb paraméterekkel, mint számos egyéb Arduino lap.
Tehát nem kell külön WiFi shield.
Gyors, nagy memória, szerintem egyetlen hátránya a kevés I/O láb.
Arduinoként C-ben, C++-ban programozható, nagyon jó kész könyvtárak vannak hozzá.
32 bites proci.[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Genuino 101-et nem ismerem, nem akartam Intel irányba elmenni, én az ARM irányt céloztam meg, pl:
http://www.ebay.com/itm/STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-For-Arduino-/291693366485?hash=item43ea478cd5:g:74YAAOSwZ8ZW5jfe
[link]
és hasonlók, azokkal nagyon kellemes tapasztalataim vannak.Én az ESP-t (ESP12-E, NodeMcu Lua, és ez: http://www.ebay.com/itm/Hot-ESP8266-ESP-12E-WIFI-Wireless-Dev-Board-for-Arduino-IDE-UNO-WeMos-D1-F7-/222050036152?hash=item33b336a9b8:g:qaoAAOSwxp9W4pIk [link] ) kedvelem, mert önmagában egy komplett, jó teljesítményű 32 bites Arduino is.
A soros vonala tapasztalatom szerint megbízhatóan működik, így - elvileg - gond nélkül együtt kell működnie a 101-el is.
Pár példány van belőlük, az oktatás során sem sikerült egyet sem kinyírni a félév során. :-)nfc shoeldet nem ismerem.
RFID-ként a következőt próbáltam (Mifare):
http://www.ebay.com/itm/Mifare-RC522-RFID-13-56Mhz-Module-Wireless-Module-ICSH008A-/351374091757?hash=item51cf8725ed:g3AAAOSwGXtXgLbM [link]
Ez - elvileg - nagyon kényelmes, mert mindent elintéz a rajta lévő proci, ha egy tag (pl. kártya) közelít hozzá, folyamatosan ismételgetve küldi soros vonalon a kártya ID-jét.
Ez az elv, mert nekem támadtak vele gondjaim, aztán ez is a fiókba került, amikor sürgősebb dolgok kerültek elő (a már írt ESP hőmérséklet mérés). Azóta még nem vettem elő.
3V-on működik, rajta van egy fesz. szab. , ezért 5 V-al kell megtáplálni, de a soros vanal 3V-os. A korábbi változatokon volt egy LED, közvetlenül az 5V-ra kötve. No ez általában elfüstölt, azóta az újabbakon csak a helye van.
Nekem volt amikor működött, de volt amikor nem. Van hozzá egy "gyári" tesztelő program, én is azt (is) használtam, de a NET szerint az észreveszi, ha nem eredeti a dolog, és kinyírja a prociban lévő firmware-t, tehát újra kell tölteni.
Na, ez még nálam nem került sorra. Van szűz példányom is, idő hiányában még a fiókban. Azt nem próbálom ki a teszt programmal, csak simán olvasom majd az adatait a soroson, remélem megy.Ez meg egy régebbi, de kész könyvtárakkal - állítólag - jól programozható, stabilan működik. Nekem még a fiókban van, nem próbáltam. :
http://www.ebay.com/itm/RC522-Mifare-Card-Read-Antenna-RF-Module-RFID-Reader-IC-Card-Proximity-Module-/172229986397?hash=item2819b5085d:gGEAAOSwvg9XUupm [link][ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Sajnos azt nem ismerem, nincs róla infóm.
Ha nem vagy biztos a kommunikációban a 101 és az ESP között, kipróbálhatod.
Holnap (hétfő) délben jön hozzám (Bp., Gellért tér környéke) egy itteni fórumtárs ESP "bemutatóra", ha akarod Te is jöhetsz és ki tudod próbálni.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Ne felejtsd el, hogy ehhez 3.3 V táp. és 3.3 V-ot is tudó soros-USB átalakító kell!
A NodeMcu Lua és a WeMos tartalmaz fesz. stabilizátort és soros-USB átalakítót is.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Gergosz2 #3283 üzenetére
Ízlés kérdése. Mindenkinek a saját szempontjai alapján kell dönteni.
Én azért pártolom a WiFit, mert az sokkal általánosabb, gyakoribb mint a többé-kevésbé egyedi RF chipek. Egy WiFis megoldásban szerzett gyakorlat biztosan nem válik holt tudássá évek múltával sem. Sokkal több WiFis chipet használnak a világon, mint az egyéb RF megoldásokat. Attól még persze lehet használni a spéci RF chipeket is, ha valakinek az a szimpatikusabb, vagy van valami oka, hogy az ő alkalmazásában azt használja.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Gergosz2 #3288 üzenetére
Gergos2 és tvamos!
Pap és papné esete.
A WiFi chip használata során a vezérléshez html kódú WEB lapot írunk. A html-t majdnem minden második ember ismeri, és elég stabilan állja az idők próbáját.
A többi meg minden programban ugyanaz, mivel a kész osztálydefiníciókat használjuk.Egy hevenyészett példa:
ESP8266WebServer amiNevetSzervernekValasztottam(80);
void ezthajtsdVegreHaGyokerbeLepek() {
String teendo = amiNevetSzervernekValasztottam.arg("macska");
if (teendo == "ehes"){
//adj enni a macskanak
}else if (teendo == "nyugos"){
//simogasd meg
};String WEBlapKodja = "<html>\r\n";
WEBlapKodja += "<!DOCTYPE HTML>\r\n";
.......ide írjuk be, a WEBlap részeit: gombokat, linkeket, miegymast
WEBlapKodja += "</html>\n";
amiNevetSzervernekValasztottam.send(200, "text/html", WEBlapKodja);
}void setup(void)
{WiFi.mode(WIFI_AP); // AccessPoint
WiFi.softAP("amiNevetWiFiSSDnekValasztok","hozzaJelszo"); // SSID, pw.
amiNevetSzervernekValasztottam.begin(); // start the HTTP serveramiNevetSzervernekValasztottam.on("/", ezthajtsdVegreHaGyokerbeLepek); // megadjuk, melyik fuggveny hajtodjon vegre, ha rootba lepek
}
void loop(void)
{amiNevetSzervernekValasztottam.handleClient(); // ez mindig ez
}
bongeszobe beutni:
http://192.168.4.1/?macska=ehes (ha nem változtattam meg az IP-t, hanem az alapertelmezettet hagytam)Vagy ha megírom hozza tagfuggvényt:
http://192.168.4.1/masikfeladat?villany=lekapcsAkkor kell még:
amiNevetSzervernekValasztottam.on("masikfeladat", ezthajtsdVegreHamasikfeladat);
void ezthajtsdVegreHamasikfeladat() {String teendo2 = amiNevetSzervernekValasztottam.arg("villany");
if (teendo2 == "lekapcs"){
//kapcsold le a villanyt
};String WEBlapKodja2 = "<html>\r\n";
WEBlapKodja += "<!DOCTYPE HTML>\r\n";
.......ide írjuk be, a WEBlap2 részeit: gombokat, linkeket, miegymast
WEBlapKodja2 += "</html>\n";
amiNevetSzervernekValasztottam.send(200, "text/html", WEBlapKodja2);
}[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz ghostie #3300 üzenetére
Én Sokimm válaszához csatlakozom. Az Arduino egy lego, amit csinálni kell. A neten rengeteg példa van, szinte mindenre. Ha led és ellenállás van benne, akkor azt is odaírják, hogy mekkora ellenállást tegyél oda. Majd, ha már sok mindent megcsináltál, közben megtanulod, hogyan számold ki azt az ellenállást.
Fiatal koromban, amikor elkezdtem elektronikával foglalkozni, megkérdeztem egy villanymérnök kollégát, hogy a Z80-as panel egyik TTL IC-jéhez mekkora hidegítő kondit tegyek. Hát, az nem olyan egyszerű, azt meg kell méretezni, mondta. Aztán láttam, hogy az ő paneljaira hasonló helyre mindenhova 100nF kondit tesz. Megkérdeztem, miért? Ekkorát szoktunk, mondta. Utána én is olyat tettem.
Ha arra vártam volna, hogy megméretezze nekem, ma sem tartanék sehol. Az Arduinoban az a jó, hogy akár alapismeretek nélkül is lehet kezdeni, és az ismereteket közben bővíteni. Ha csak az elektronikai alapismeretekkel kezded, egy idő után megunod és abbahagyod. Tapasztalatból tudom, hogy 15-20 óra alatt pl. el lehet jutni elektronikai alapismeretekkel nem rendelkező srácokkal oda, hogy a saját mobiltelefonjukról kapcsolják ki-be az ESP8266-hoz kötött ledet (vagy készülék fűtést).
Ez persze az én szubjektív véleményem és tapasztalatom, nem akarom cáfolni az ellenkező véleményen állókat. Mindenkinek saját magának kell döntenie.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz gyapo11 #3328 üzenetére
"Mikrovezérlővel igen"
Az Arduino nem mikrovezérlő? (Atmel, ARM, ESP, Microchip PIC, stb. ezeken fut az Arduino kód.)
"netről levadászott kódok"
Nem kell a netről vadászottat használni, írhatsz sajátot.
"általában C-ben"
Ha nem tetszik a C++ , Arduinora is írhatsz C-ben is.
"Ennek megfelelően az ára is több 10-ezer lehet egy ilyen egyedi fejlesztésnek."
Üzleti oldalához nem tudok hozzászólni.Az igaz, hogy hardverközeli program írása esetén csak azon az (általában) egyetlen kontrolleren fog hibátlanul futni, amire írtad, de egy ilyen LED vezérlés egyetlen (!) láb le-föl mozgatásából áll, megfelelő időzítéssel, de adott esetben elég nagy toleranciával. Ez nem egy egetrengető feladat.
Ketten más szemszögből nézzük a dolgokat.
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz printpro #3329 üzenetére
A sokféle vélemény kíváncsivá tett!
A kezem ügyében lévő cuccokból (Uno + led szalag) összeütöttem egy próbát.
Sokat nem tököltem vele, de az adott minták közül a "Ripple"-t próbáltam.
Minden gond nélkül működik.
Majd egyszer kipróbálom a többit is, de ma már hamarosan aludni fogok, holnap meg valószínűleg strand.
Majd valamikor a jövő héten.
Úgy látom, itt most az lett a jelszó, hogy ha nem elég bonyolult az életünk, akkor igyekezzünk feleslegesen elbonyolítani. Az én elvem ezzel szemben az, hogy ember segíts magadon, Isten is csak akkor segít!
A vezérlés sem egy ördöngősség. Én - mint általában - a WiFi megoldást javasolom, bár ezért többen visszaszednék rólam a keresztvizet.
A WiFi előnye szerintem (többeknek különbözik a véleménye):
1. egyszerű programozni, html lapot írsz.
2. böngészővel (Firefox, stb) kezeled, ezért paltform független, megy iPhonon, Androidon, Windowson, Linuxon, telefonon, tableten PC-n egyaránt, ami épp a használó keze ügyében van.
3. minden bizonnyal 10 év múlva is ismerni fogják a böngészők a html-t, ezért hiába jön mindenféle verzió váltás, nem avul el.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz soldi3r #3337 üzenetére
Természetesen!
Az egy C++-ról lefordított program. Sőt, ha ARM-ra, PIC-re fordítod, ott is megy, persze ha nem alap szinten kezeled a hardware-t. Ha úgy tartja úri kedved, akár az Arduino bootloadere nélkül is betöltheted.
A framework tartalmazza minden illesztett procira egy fájlban, hogy az adott, C++-ban (C-ben) megírt kódot, "hogyan kell fordítani". (Pongyolán fogalmazva. Aki precízen akarja, utána olvashat. ) Például, hogyan kell fordítani azt, hogy a programban 2-es lábnak nevezett lábat emelje fel, vagy tegye le, és melyik lesz a "2-es" láb.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz printpro #3334 üzenetére
Saját szórakoztatásomra tököltem vele egy órát. Simán össze lehet rakni, és a kombinálás se gond. Pénzes melót nem vállalok, nem azért írom, de saját szórakozásra meg fogom csinálni, ha néhány nap múlva visszajövök vidékről, mert megtetszett a dolog, ahogy felváltva egyik, majd másik "műsor megy", változtatott fényerővel. A hue, saturation változtatás valószínűleg még élvezetesebbé teszi, de azt még nem próbáltam, mert képletekkel kell átszámítani az RGB-t, változtatni, majd vissza. :-)
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3361 üzenetére
Az okát jól leírta gyapo11.
Amatőr megoldás a problémára:
1. Az öregecske 328-as proci helyett egy korszerűbb. Nem drágább pl. egy ARM, ami sokkal gyorsabb, nagyobb a memóriája, korszerűbb. A megírt arduino program úgyanúgy (általában) fut rajta.
2. Multiprocesszor amatőr megoldása, hogy ha ragaszkodsz a 328-as procihoz, hogy egy picike külön 328-as Arduino panel (5-600 Ft), ami semmi mást nem csinál, csak a soros portot kezeli, ha lehet/szükséges előfeldolgozást végez, és akkor küldi át a ténylegesen dolgos procinak, amikor az kéri.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Egy "amatőr" cég [Microchip ] honlapjáról egy ajánlás:
"chipKIT Development Platforms Professional Tools Inspired by Arduino"
"Simple code development with the official Arduino IDE (v1.6.7 or later);
compatible with most Arduino functions and libraries"[link]
http://ww1.microchip.com/downloads/en/DeviceDoc/00001423C.pdfMár a Microchip saját oldalának ajánlatai között is szerepel Arduino?
[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz gyapo11 #3366 üzenetére
"én pl. még nem láttam azt a kódot, ami akkor fog lefutni, amikor ezt a sort hajtja végre és küldi ki a soros portra a byte-okat"
Tessék:
size_t HardwareSerial::write(uint8_t c)
{
_written = true;
// If the buffer and the data register is empty, just write the byte
// to the data register and be done. This shortcut helps
// significantly improve the effective datarate at high (>
// 500kbit/s) bitrates, where interrupt overhead becomes a slowdown.
if (_tx_buffer_head == _tx_buffer_tail && bit_is_set(*_ucsra, UDRE0)) {
*_udr = c;
sbi(*_ucsra, TXC0);
return 1;
}
tx_buffer_index_t i = (_tx_buffer_head + 1) % SERIAL_TX_BUFFER_SIZE;// If the output buffer is full, there's nothing for it other than to
// wait for the interrupt handler to empty it a bit
while (i == _tx_buffer_tail) {
if (bit_is_clear(SREG, SREG_I)) {
// Interrupts are disabled, so we'll have to poll the data
// register empty flag ourselves. If it is set, pretend an
// interrupt has happened and call the handler to free up
// space for us.
if(bit_is_set(*_ucsra, UDRE0))
_tx_udr_empty_irq();
} else {
// nop, the interrupt handler will free up space for us
}
}_tx_buffer[_tx_buffer_head] = c;
_tx_buffer_head = i;sbi(*_ucsrb, UDRIE0);
return 1;
}Nem gondolom, hogy az Arduinot használók között túl sokan vannak, akik az assembly kódot akarják bogarászni. Aki mégis, az meg azt is tudja, hogyan kell a fordítót paraméterezni, hogy legyen egy közbülső assembly kódod is.
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz gyapo11 #3373 üzenetére
Ebben is egyetértünk. De vannak akik szeretnek legózni, ahelyett, hogy CNC gépen kifaragnák maguknak az egyes elemeket. Pedig az biztosan jobban passzolna az elképzeléseikhez.
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
-
Janos250
őstag
Próbáld ki Gergosz2 válaszát és tegyél a kapcsolóval párhuzamosan egy kondit, mert szerintem is gyapo11 válasza ül, hogy pergés miatt van. Az ellenállás már úgyis ott van. Én a reset lábat is úgy használom
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Én ezt használom szinte mindenre:
[link]Meg ezt:
[link]Néha ezt:
[link]Ha nagyobb teljesítmény kell, akkor ezt:
[link]Erre tervezem átállni az Arduinoknál, de még nem próbáltam ki
[link]Ezeknek a hatásfoka igen jó!
[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3421 üzenetére
Esetleg egy próba:
Már nem pontosan emlékszem a problémára, és nem találom az eredeti bejegyzést, de soros átvitel során elvesznek adatok.
Nekem a Serial.print okozott hasonló problémákat ott is, ahol nem lett volna szabad. Igaz, én ESP-t használtam. Ha kihagytam az ellenőrző Serial.print-eket, hiba nélkül ment. Ha a Serial.print-ek elé, után delayt raktam, általában az is megjavította. Ha gondolod, próbáld ki.
Nincs más a programban, ami a megszakításaival bekavar?Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3437 üzenetére
Okosat nem tudok mondani, de az egyik case-ből hiányoznak a break-ek.
Tapasztalatom szerint ez teljesen meg tudja bolondítani a programot, teljesen váratlan módon képes futni, nem csupán azt teszi, hogy ráfut a többire is.Ezt másnak is hangsúlyozom: Hiányzó break-ekre vigyázni!
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3437 üzenetére
Még egy megjegyzés egy amatőrtől:
Majd amikor már teljesen készen lesz a program, javasolom a globális változók használata helyett a class/objektum-ra átírást. Ugyanis ha csak egy szalagod van, akkor nem okoz gondot a globális változók használata, de ha több szalagot vezérelsz, akkor egymásnak bekavarnak. Objektum esetén viszont minden példánynak sajátjai vannak, tehát nem bántják egymáséit.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Pár szigorún szubjektív megjegyzés azoknak, akik színes led szalagot akarnak programozni:
#include <RGBConverter.h> után kényelmes RGB - HSL átszámítási lehetőséget kapunk:
RGBConverter enKonverterem = RGBConverter();
enKonverterem.rgbToHsl(R, G, B, HSL); //byte R, byte G, byte B, double HSL[]
enKonverterem.hslToRgb(H, S, L, RGB); //double H, double S, double L, byte RGB[]
Az eredményt az utolsó paraméter 3 elemében kapjuk.
Ha az RGB-t átrakjuk HSL-be, változtathatjuk a H (hue) színezettséget,azaz a színt, az S (saturation) színtelítettséget, és az L (lightness) fényerőt.
Utána visszarakhatjuk RGB-be.LED szalaghoz én az Adafruit osztályát próbáltam:
#include <Adafruit_NeoPixel.h>
Egy ciklusban (vagy akárhogy) feltöltjük minden egyes (i.) ledhez a három színt.
enLEDszalagom.setPixelColor(i,R,G,B);
Amikor kész a feltöltés, akkor jöhet a show:
enLEDszalagom.show();
Szerintem kényelmes, de több másik is fellelhető a neten.A neten található példákban a szabályozásra különféle tekertyűket használnak. Azt már korábban írtam, hogy - sokakkal ellentétben - én a mindenféle tekertyű helyett a WiFi/telefon képernyője használatát javasolom.
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3442 üzenetére
Sajnos nincs kéznél, és a napokban nem is érek rá csinálni , neten meg nem tudok egyszerűt.
"Az effektezésnél tudatosan vannak kihagyva, így paramétertől függően végigmehet mindegyiken."
Én azért próba-szerencse alapon kipróbálnám enélkül, azaz ideiglenesen kikommentelve.
Vagy másként szervezném a switchet, hogy szabályos legyen, bár lehet, hogy így is az.Erőforrás:
Ja, igen, én ESP-t és ARM-ot használok többnyire :-)Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3442 üzenetére
Kérésedre készítettem egy hevenyészett egy oldalas mintát az osztályok, objektumok témában.
A dolog persze sokkal összetettebb, de azt nem egy oldalon, hanem teljes könyvekben írják le.
[link]Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3451 üzenetére
Igen, jól érted.
Nem biztos, hogy jó a javallatom, mert nincs energiám részleteiben átbogarászni a programod.
Talán: egy képkocka generálás egy class, paraméter a kocka adatait tároló vektor.
Egy képkocka adatait mindenképpen egy vektorban kell tárolnod, és egyszerre küldeni ki a szalagra, mert - ha jól emlékszem - talán
8-9 microsec lehet max a szalag következő ledjének az adatainak küldése között, mert ha hosszabb, akkor "elölről kezdi",
azaz ami pl. 10 microsec múlva érkezik, azt már újra az első led kapja el, mint "sajátját".
Tehát akkor:
Egy képkocka első szalagra, bele a vektorba.
A vektor kiküldése az első szalagra.
Egy képkocka második szalagra, UGYANABBA a vektorba (memória takarékosság)
A vektor kiküldése a második szalagra.Változók/memória:
Amit a classban "felül" deklarálsz, azok a példány élete során végig megmaradnak. Amit az egyik tagfüggvényben, az csak a tagfüggvény működése közben.
A class a paramétereket (többnyire) érték szerint veszi át, de pl. a vektort nem, hanem "hivatkozás szerint", azaz a címét veszi át, és a "kintit" használja, így nem foglal
külön memóriát. Ha kell, lehet olyat is, hogy valamely változóból ne jöjjön létre példányonként egy-egy, hanem összesen egy, és minden példány azt az egyet használja ("static").Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Teasüti #3454 üzenetére
"Mit értesz vektor alatt?"
Amit Te puffernak nevezel.
"ugyanúgy el kell tárolnom a ram-ban a vezérlőbájtokat minden szalagra vonatkozóan"
Így van.
"akkor ezt sehogy nem lehet leredukálni egy változóra"
Azt tényleg nem.
"Vagyis ha jól értem az egyetlen előny az volna, hogy átláthatóbb és rendezettebb lenne a program a mostani katyvasz helyett."
Jól érted.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
-
Janos250
őstag
válasz MasterMark #3459 üzenetére
Persze.
A minire a program feltöltéssel nekem voltak gondjaim, de aztán megoldódott.
Ha jól emlékszem úgy, hogy az ebay-en megadott linkről töltöttem le a drivert, de ebben már nem vagyok biztos, régen használtam.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz MasterMark #3462 üzenetére
"szabad is ilyet venni"
Persze. Közben rájöttem, hogy nem ezzel voltak gondjaim a feltöltésnél, hanem ezzel:
[link]
mert nincs USB csatlakozás, soroson kell feltölteni, és nem figyeltem arra, hogy kézzel kell a feltöltés előtt bootloader módba állítani.
"nem gyújtja fel a lakást?"
Nem! :-)
5V, (vagy 3.3) és párszáz mA még akkor sem csinálna bajt, ha valami gubanc lenne, de nem szokott lenni.
Mennek ezek rendesen. Nálam még az egész arduino seregből egy se purcant ki, pedig mind a legolcsóbb kínai.
Ha meg túl pesszimista az emberfia és fél az 1-2 Watt-tól, akkor egy olyan táppal hajtja meg, ami eleve csak kisebb áramot tud leadni.Az más kérdés, hogy én helyette (mivel ez ATmega328 procival megy) inkább az ARM chippel készülteket szoktam ajánlani, pl:
[link]
Ezt a lapocskát én nagyon szeretem. Jók a paraméterei, gyors, miegymás. Na, meg ARM.
vagy :
[link]
Az a jó - többek között - az Arduino kompatibilis lapokban, hogy a megírt program az adott lapra fordítva ugyanúgy fut gyakorlatilag mindegyiken. Persze, ha nem használunk spéci dolgokat.Na, meg ezeket is kedvelem, mert szintén nagyon jók a paraméterei és alapból benne van a WiFi:
[link]
[link]Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz Daszkalosz19 #3466 üzenetére
Pár megjegyzés:
Próbáltam legalább szintaktikailag leellenőrizni, rendbehozni.
Az LCD kivételével a többi rendbehozható (szintaktikailag), ahhoz valószínűleg meg kell keresni a passzoló könyvtárat, de arra már nem futotta az energiámból.A MenuBackend menükezelőből több példány kering a neten, a legújabb valószínűleg az 1.1,
de ebből is hiányzik a
void toRoot() {
setCurrent(&getRoot() );
}
tagfüggvény, amit ha használni akarja az ember, kézzel be kell írni.
[link]
Egyébként ez a MenuBackend meglehetősen régi, régóta nem fejlesztik, vannak más menükezelők is. (Én egyiket se használtam)A LiquidCrystal_I2C könyvtárral szintén vannak gondok, mert (nekem legalábbis) a megjegyzéssel ellentétben nincs az arduino standard könyvtárában.
Amit a Google elsőre kiad, azzal nem kompatibilis.Egyébként ez valóban hátránya a szabad szoftveres dolgoknak, hogy mindenki fejleszti, nem tudni ki melyik verziót használta, kik adták ugyanazt a nevet a saját fejlesztésű könyvtáruknak.
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
Új hozzászólás Aktív témák
- Tyű-ha Lenovo Thinkpad T14 G2 Üzleti "Golyóálló" Laptop 14" -50% i7-1185G7 4Mag 16GB /512GB FHD IPS
- Ej-ha Lenovo Thinkpad T14 G2 Üzleti "Golyóálló" Laptop 14" -50% i7-1185G7 4Mag 32GB /512GB FHD IPS
- Eladó Nitro Venture TLS Snowboard Bakancs 46-os
- Eladó Nitro Team 2022 162W Snowboard Deszka
- Új Lenovo Ideapad Flex 5 x360 Érintős Hajtogatós Laptop Tab 15,6 -30% Bivaly AMD Ryzen 5 5500U 8/512
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Promenade Publishing House Kft.
Város: Budapest