Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   135 / 850
(#) erdeidominik1999 válasza fkx hozzászólására (») Júl 13, 2015 /
 
Nah, valami itt nagyon nem stimmel, mert ha a tisztit elé, és után is teszek egy Serial.write(clientline)-t, akkor ez lesz:
Idézet:
„EEzz mmoosstt eeggyy %EEDD bbeettûû”

Az egész összemosódik... Ha csak az előtte lévőt iratom, akkor szépen ugyan az visszajön, amit beírtam, ha csak az utánalévőt, akkor meg szintén ugyan az, csak a %-jel eltűnik belőle. Viszont ha a c string értékét nem olvasom, hanem megadom, akkor tökéletesen működik, ez most akkor mi?
(#) fkx válasza erdeidominik1999 hozzászólására (») Júl 13, 2015 /
 
Akkor már tudom mi történik:
Azt írod a kódban:
  1. while (Serial.available()>0) ....

Azaz addig fut amig van elérhető karakter, azonban az ardunio sokkal gyorsabb mint ahogy gépelsz. Tehát lenyomsz egy gombot, elküldi, feldolgozza, és mire nyomnád a következőt, már rég elfogytak az adatok, azaz a programod betünként meghívja a függvényt, és a tömbödben mindig csak egyetlen betű van. Ha átírnád úgy hogy mondjuk enter-ig ('\r' || '\n') olvassa a soros portot (ne álljon le a ciklus ha kifogy az adat, csak ha entert nyomsz), akkor valószínüleg működni fog.
A hozzászólás módosítva: Júl 13, 2015
(#) fkx válasza erdeidominik1999 hozzászólására (») Júl 13, 2015 /
 
Szóval valahogy így:
  1. char c;
  2. while (((c = Serial.read()) != '\r') && (c !='\n')) {
  3. .....
A hozzászólás módosítva: Júl 13, 2015
(#) erdeidominik1999 válasza fkx hozzászólására (») Júl 13, 2015 /
 
Köszi, valóban ez volt a hiba, most már megy a webszerveren is tökéletesen... Még egy kérdés, tudom már kérdeztem, de nem igazán kaptam megfelelő választ: a weboldal beállításaitól érkező adatokat tehát pl.: ip=192.168.0.50&mac=AD-DE..., hogyan olvasod ki a c stringből? mert én az strstr-t használom, de ugye az csak konkrét szöveget tud olvasni, azt nem tudom vele megcsinálni, hogy a következő & jelig olvasson...
A hozzászólás módosítva: Júl 13, 2015
(#) kapu48 válasza erdeidominik1999 hozzászólására (») Júl 13, 2015 /
 
String darabolás:
Splitting a String
(#) erdeidominik1999 válasza kapu48 hozzászólására (») Júl 14, 2015 /
 
Szia! Ha megkérlek egy kicsit még segítenél ebben? Illetve egyszerüsítettem a progin, és felemrült még egy probléma: a hitelesítésnél a random számokat egy unsigned int-es tömbben tárolom, az strstr-nél meg const char* nak kell lennie, és sehogyan nem akar összejönni a konvertálás.
(#) fkx válasza erdeidominik1999 hozzászólására (») Júl 14, 2015 /
 
Nézegesd az atoi() függvényt, ez karakterláncból (C stringből) csinál int változót. Az itoa() ennek a fordítottja (ha meg van valósítva) , de a sprintf() is kényelmesen használható.
Amit ITT kérdeztem azzal mi a helyzet?
A hozzászólás módosítva: Júl 14, 2015
(#) lacika5555 hozzászólása Júl 14, 2015 /
 
Sziasztok!

Egy kis segítséget szeretnénk kérni. Lenne egy Arduinom amire írtunk egy programot és csináltunk neki egy nyáklapot pwm szabályzás illetve pár relét működtett.
Olyan problémába ütköztünk, hogy az Arduino gondol egyet és újra indul (világítás van rákötve és egy pillanatra elalszik és utána ki is gyullad) nagyon zavaró.
Sajnos random jellegű és nem tudom semmihez kötni.
Valakinek esetleg valami ötlete?

Köszönettel Laci
(#) Kovidivi válasza lacika5555 hozzászólására (») Júl 14, 2015 /
 
Rakj kondenzátort az Arduino táplábához, 1000uF+100nF-ot, a Reset láb elvileg fent van tápon, ha rendes Arduino nyákod van. Vagy készítettetek magához az IC-hez új nyákot, minden körítés nélkül? Mert ha lemaradt a reset-ről a felhúzó ellenállás, az csinálhat ilyet, főleg zajos környezetben.
(#) Kera_Will válasza lacika5555 hozzászólására (») Júl 14, 2015 /
 
Perifériákat hogy választottad le , hogy hajtod meg?
Hosszú drótok a portokon?
(#) erdeidominik1999 válasza fkx hozzászólására (») Júl 14, 2015 /
 
Az ethernet libbel az volt, hogy akármilyen libet töltöttem le netről, nem ment due-n, hibát nem írt, csak nem működött. A végén az lett a megoldás, hogy a manage libraries-re ha rákattintasz, onnan töltsd le az ethernet libet, ott írja is, hogy due kompatibilis, viszont ha due-re fordítod le az hibát ír, annyit kell csinálni, hogy most nem emlékszem melyik fájlra írta a hibát, asszem a w5100.cpp-re abban be kell tenni, hogy int SPI_CS=10; ez hiányzik belőle, ezután tökéletes. Ne kérdezd, nem tudom, hogy a gyári lib hogyan lehet hibás...
(#) erdeidominik1999 válasza fkx hozzászólására (») Júl 14, 2015 /
 
Köszi, az itoa tökéletesen működik, már csak az adatok olvasásában kérném a segtséget.
(#) fkx hozzászólása Júl 15, 2015 /
 
Megérkezett a DUE. Szépen lefordul rá a program aztán néhány file olvasás után lefagy. A gyári SD lib kompatibilis ezzel a lappal? Vagy selejtet kaptam?
(#) erdeidominik1999 válasza fkx hozzászólására (») Júl 15, 2015 /
 
Nem, ez kell hozzá!

SD-master.zip
    
(#) fkx hozzászólása Júl 15, 2015 /
 
Extra szívás van:

webserver.ino:45:19: fatal error: w5100.h: No such file or directory
compilation terminated.
Hiba a fordítás során.

A fájlt már mindenhová odamásoltam, újratelepítettem az arduinot, és maradt a hibaüzenet. MEGA-ra sem fordítja le a kódot, és semmire sem. Nem tudom hol tárolhat még hibás beállítást.
(#) kapu48 válasza fkx hozzászólására (») Júl 15, 2015 /
 
Ha nem csak bemásolgatsz, hanem követed az utasításokat, akkor jó lesz:
Installing Additional Arduino Libraries

És közben a Due legyen kiválasztva boardnak.

Ne csüggedj előszörre én is töröltem pár szór.
(#) erdeidominik1999 válasza kapu48 hozzászólására (») Júl 15, 2015 /
 
Én is sokat szenvedtem vele, a program files-ban, és a dokumentumokban sincs már benne? Én a programból töltöttem le az ethernet libet, mint már írtam. Az mitől lehet, hogy megcsináltam a webszervert, hogy programindulásnál letölti az ntp időt, de ha bedugom, nem jön idő, ha rányomok egy resetet, akkor meg jó lesz, elsőre sosem jó.
A hozzászólás módosítva: Júl 15, 2015
(#) fkx válasza kapu48 hozzászólására (») Júl 15, 2015 /
 
Ujratelepítettem. Most lefordul a program. MEGA-val megy, a DUE-n lefagy.

Melyik lib-ek helyett kellene másikat telepítenem?

Jelenleg ezek vannak includolva programban:
#include <SPI.h>
#include <SD.h>
#include <Ethernet.h>
(#) erdeidominik1999 válasza fkx hozzászólására (») Júl 15, 2015 /
 
Én az ethernetet és az sd-t cseréltem. Az sd-t arra, amit átküldtem, az ethernetet pedig letöltöttem a library managerből.
(#) erdeidominik1999 hozzászólása Júl 15, 2015 /
 
kapu48 neked is van due-d?
(#) lacika5555 válasza Kovidivi hozzászólására (») Júl 15, 2015 /
 
Csatoltam a nyáklapot ez csak egy teszt nyáklapnak készült kijelzővel ami már lekerült róla.
A hozzászólás módosítva: Júl 15, 2015
(#) kapu48 válasza erdeidominik1999 hozzászólására (») Júl 15, 2015 /
 
Igen van due-m. csak az én ETH-em enc28j60D chipes. És csak ½ kész dues libet találtam hozzá!
Egyelőre szívok vele! De ha nektek bejön a W5100-5200-as beszerzek én is olyat.

fkx!
Ne keverd a két rendszert, mert még a Dues libek nagy része csak Béta verziós.
A Due-hoz keres új libeket, amiket már teszteltek vele.
(#) erdeidominik1999 válasza kapu48 hozzászólására (») Júl 15, 2015 /
 
Csak azért kérdezem, mert azt vettem észre, hogy azt csinálja a due, hogy ha bedugom, nem indul el a progi, csak ha nyomok egy resetet, vagy gyorsan kihúzom, bedugom. Próbáltam, még a sima blink program is ezt csinálja. Ezt eddig nem vettem észre, mert ahogy csináltam a webszervert mindig nyitottam soros monitort, és ott ugye autómatikusan reset... Ez mitől lehet?
(#) kapu48 válasza fkx hozzászólására (») Júl 15, 2015 /
 
Ne keverd a két rendszert, mert még a Dues libek nagy része csak Béta verziós.
A Due-hoz keres új libeket, amiket már teszteltek vele.

A régi hasonló nevű :
#include <SPI.h>
#include <SD.h>
#include <Ethernet.h>
Rontsd el, mert azok még nincsenek felkészít a due kezelésére.
És ha kiabál fordításnál meg tudod nézni mit akar használni
(#) kapu48 válasza erdeidominik1999 hozzászólására (») Júl 15, 2015 /
 
Programozás idejéig lekel kapcsolni a terminál.

Tegyél várakozást:
while (Serial.read() <= 0) {}
delay(200); // Catch Due reset problem

És nem fog resetelni.
(#) erdeidominik1999 válasza kapu48 hozzászólására (») Júl 15, 2015 /
 
Nem az a gond, hogy magátol resetel, hanem, hogy nem indul el a program.
(#) kapu48 válasza erdeidominik1999 hozzászólására (») Júl 15, 2015 /
 
Setup elején várakozz keveset lehet, hogy az ETH kártya vagy LCD-k szoktak lassabban feléledni.

Ezt a késleltetést AVR-nél HW-ből is be lehetett állítani.
A Samot még nem ismerem elégé.
(#) erdeidominik1999 válasza kapu48 hozzászólására (») Júl 15, 2015 /
 
Nem jó így sem, de ha nincs ethernet, lcd, semmi csak egy siam blink program, akkor is ezt csinálja.
(#) kapu48 válasza erdeidominik1999 hozzászólására (») Júl 15, 2015 /
 
Túlterhelik a LED-ek?
Ez csak 3.3V rendszer. A régi 5V ilesztés nem jó!

Rá engedtél 5V-ot?
A hozzászólás módosítva: Júl 15, 2015
(#) erdeidominik1999 válasza kapu48 hozzászólására (») Júl 15, 2015 /
 
A 13-as beépített ledet villogtatom a sima example blink progival. De az összes programnál ez van. Neked nem csinálja? De ha 5 mp-en belül kihúzom, visszadugom akkor nem csinálja, csak ha hoszabb ideig van kihúzva az áram.
Következő: »»   135 / 850
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem