Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Sziasztok! Egy arduinó és egy sim900-as közötti soros kommunikációval lenne gondom. Jelenleg ezt:
a kódot használom, de sokszor új sorba kerülnek karakterek, eltördeli a szöveget, és így nem tudja értelmezni a program többi része. Mi lehet itt a baj? Hogyan tudnám úgy megcsinálni, hogy C stringben legyen, és jól működjön? És még egy kérdés: arduinó due-n nincs software serial? Előre is köszi! A hozzászólás módosítva: Okt 6, 2015
Sziasztok
Kellene egy kis segítség Kínából vettem egy arduinot amin egy mega 2560-as avr van. Az első program feltöltés az sikerült majd másnap egy másik programot akartam rátölteni mire egy ilyen hibát kaptam: avrdude:stk500v2_ReceiveMessage(): timeout. Ez ha nem tévedek bootloader hiba,na külső programozóval ICSP csapokon felraktam rá egy loader programot ami az arduino könyvtárban volt utána ismét sikerült programozni elsőre de másodikra megint nem. Majd mérgembe nyomtam neki egy reset gombot mire ismét felment a program. Van valami ötletek hogy ez mitől lehet,ja és egyébként a loader betöltése után a 13-led villog egyenletesen azt nem tudom hogy hiba-e. De az is lehet hogy rosszul töltöttem fel a loadert. Ezekben kérnék egy kis segítséget előre is köszönöm.
Bootreset bit nincs bekapcsolva és/vagy bootloader méret nem 4kbyte-ra állított.
Szia!
Bocs hogy csak most írok de sokat melózók és későn érek haza. Na megnéztem a dolgokat és át állítottam most minden oké köszönöm szépen a segítséget. Ha esetleg lesz még valami gondom remélem nem baj ha kereslek. Köszönöm még egyszer. Üdv.
Szia
Na ezt elkiabáltam 2 szer tudtam feltölteni utána megint nem működött. Csatolok pár képet segítenél elmagyarázni hogy mit hova állítsak. Előre is köszönöm. Üdv.
A reset lábbal lesz a gond. Vagy túl rővid ideig kapja meg a földet, vagy nem is kapja meg, vagy van ott valami, ami miatt nem tudja lehúzni a programozód. Kipróbálhatod: indítsd el a feltöltést, és azonnal nyomd meg a reset gombot a panelen (ha van. Ha nincs, készíts egyet). Ha ilyenkor mindig sikeres a feltöltés, akkor ott a hiba. Nekem CP210X-vel volt gondom, a DTR-ről szerettem volna reset jelet levenni, próbáltam többféle kondival (100nF), de csak a 0603-as méretű kondi vált be, a fóliakondival nem resetelt. Ha lenne szkópom, ránézhettem volna a reset lábra. Lehet neked meg van a lehetőség.
Szia
Köszönöm a segítséget szkópal ránéztem ést tényleg az volt kicseréltem a kondit egy smd 1uf kerámiára és minden program felmegy rá nincs hiba semmi. Köszönöm még egyszer. Üdv.
Na ennek örülök!
Milyen kondi volt előtte? 100nF-ot szoktak ajánlani egyébként. Gyári nyákod van, vagy milyen? Te készítetted a soros porti programfeltöltést? A hozzászólás módosítva: Okt 9, 2015
Sziasztok.
Azt hogy lehet megoldani, hogy csak akkor fusson a program ha meg nyomok egy gombot, illetve ha egy másikat akkor álljon meg? Előre is köszi
Sziasztok!
Ha a főprogram tartalmaz egy feltételt és ha az teljesül és van a végrehajtásban egy "mellékprogram" betöltése, amiben van egy visszaszámláló, ami ha lejár, akkor visszatér a főprogramhoz folytatásban?
Szia
Igen gyári nyák Kínából van ebay csak aszt hitem hogy kifogtam egy kínai vacakot és kiderült hogy igen.A kondi benne 100nf volt azt cseréltem ki így lett jó eddig nem lehetett csak egy programot felrakni rá azt is csak a bootloader újra programozása után.De most remekül megy. Nem gyári bootloader van rajta azt letöltöttem a nettről. Még csak most kezdtem foglalkozni az arduinoval úgyhogy sok mindent még nem tudok róla. A hozzászólás módosítva: Okt 9, 2015
Ez így túl általános. Pontosan mit is akarsz?
Ne menjen az elektronika? Készítesz egy egyszerű reteszelő áramkört egy mosfet és két gomb segítségével (meg ami még kell). Az egyik gombra áram alá helyezed, a másikkal pedig áramtalanítod. Álljon meg a uC? Felprogramozhatod a sleep módot úgy, hogy az egyik gomb mint külső megszakítás felébressze a uC-t. A másikat érzékelve pedig elaludjon. Csak ne fusson a vezérlőkód, de nem baj ha a uC azért megy közben? Figyeld az egyik gomb állapotát majd indíts el egy while ciklust, ami addig tart amíg le nem nyomják a másik gombot. Ez a legegyszerűbb.
Sziasztok! Olyan gondom lenne, hogy 12v-ot szeretnék mérni arduinóval, ez eddig működik is, de a táp közös lenne az ardunóéval, és így ha lejjebb megy a feszültség, a mérés pontatlan lesz, lehet ezzel valamit kezdeni? Előre is köszi!
Használd a beépített 1.1V-os referenciát, és méretezd a 12V-on levő feszültségosztót ehhez. Így pontos marad a mérésed egy bizonzos szintig.
Tehát akkor a feszültségosztó kimeneti ágán max 1.1v lehet? Akkor olyan ellenállás kéne, ha mondjuk 15v van akkor legyen 1.1, hogy felfelé is legyen puffer, ugye? Egyébként kb 9-14v ig tud ingadozni.
A hozzászólás módosítva: Okt 10, 2015
Szia. Igazad van ez így túl általános kérdés volt.
Arról lenne szó mérek hőmérsékletet ha a beállított hőmérséklet alá esik az érték akkor meg húz egy relét x ideig meghúzva marad majd elenged vár x ideig és ha nem emelkedik a hőmérséklet akkor kezdődik előröl.Azt szeretném megoldani, hogy mérje a hőmérsékletet de ha úgy gondolom meg tudjam állítani az időzítést vagy elindítani.
Így gondoltam. 9V-ból nem tudsz stabil 5V-ot előállítani?
Üdv!
Az interneten keresgélve találtam rá erre a kódra:
Segítséget szeretnék kérni abban, hogy hogyan lehetne 16 ledesre bővíteni.
Ez esetben teljesen rossz volt a kérdésed.
![]() A legjobban átlátható kódot úgy készítheted ha csinálsz egy állapot gépet (state machine). Ez sokkal bonyolultabbnak hangzik, mint amilyen. Csinálsz mondjuk egy phase (fázis) nevű változót amely a különböző állapotokat tárolja: pl.: 0 : rendszer kikapcsolva 1: fűtés ki 2: fűtés be Ezután meghatározod a fázis átmeneteket (itt azokat a feltételeket adom meg, aminek hatására egy adott fázisból át kell váltani egy másikra): 0 -> 1 : bekapcs gomb 1,2 -> 0: kikapcs gomb 1 -> 2: T (hőmérséklet) < Tsp (hőmérséklet beállított érték) és t (időzítő értéke) > tsp1 (várakozási idő 1), vagy Fűtés be gomb 2 -> 1: t < tsp2 (várakozási idő 2), vagy Fűtés ki gomb Utána pedig a relét akkor húzod meg, amikor a phase = 2. A hozzászólás módosítva: Okt 10, 2015
Ha megnézed a map(), és a shiftOut() függvényeket (Bővebben: Link), abból kiderül a megoldás.
A map-nál átírod a 8-at 16-ra, folytatod a case részt 16-ig 2 byte os értékkel, a shiftOut()-al 2 byte-ot íratsz ki és két shift regisztert használsz.
Hogy érted, hogy stabil 5v-ot? Úgy van, hogy van egy 12v-os táp (pótméterrel egy kicsit még lehet húzni) onnan mennek fogyasztók, és onnan megy az arduinó is, csak van előtte egy 7809, és a táp feszültségét szeretném mérni, ami 9-14v között tud ingadozni.
Nem értelek. Akkor az Arduino nem stabil 5V-ot kap?
Idézet: Ha a 9V-ból stabilizálsz 5V-ot az Arduinonak, akkor miért lenne pontatlan a feszültség mérés, ha a tápfeszültség 9-14 között változik?„de a táp közös lenne az ardunóéval, és így ha lejjebb megy a feszültség, a mérés pontatlan lesz. ” A 7809 9V-jával táplálod meg az Arduino -t a RAW bemenete? Ha igen, akkor 7805-öt használj, és a VCC-n tápláld az Ardut. A hozzászólás módosítva: Okt 11, 2015
És szerinted úgy jó lesz?
Eddig csak találgattam. Mondd el, nálad mi a helyzet, mert még fogalmam sincs.
Szóval van egy 12v 15a-es ipari táp, amin ugye van pótméter a finomhangoláshoz, ez be van állítva kb. 12.2v-ra, ez cctv kamerákat hajt meg, viszont nappal nagyobb a feszültség mint éjszaka, mert éjszaka bekapcsolnak az ir ledek, és jócskán megnő az áramfelvétel, lemegy kb 11.9v ra. Ezt a feszültséget szeretném mérni, és az arduinó is erről a tápról van megtáplálva egy 7809-en keresztül, de azt mondtad, hogy inkább 7805 legyen az arduinó 5v bemenetére. Illetve az még nem biztos, de lehet, hogy szünetmentesítve lesz, és akkor a 12v-os akkuról lesz az arduinó megtáplálva.
Ebből még nem következik, hogy: "de a táp közös lenne az ardunóéval, és így ha lejjebb megy a feszültség, a mérés pontatlan lesz." Miből gondolod, hogy a mérés pontatlan lesz?
mert kipróbáltam, fogtam egy állítható tápot, rátettem egy ardut, direkt lcd-re irattam nem serialra, hogy az usb ki legyen húzva, és ha a kódban finomhangolom, hogy a 12v-on annyit mutasson mint a multiméter, akkor ha a tápot 9-re teszem 1-2 tized eltérés van a multimétertől.
Értem.
Ha ekkora pontosságot akarsz, akkor első körben használj más referencia feszültséget, mint a tápfeszültség. Az 1V1-es Vref jó is lesz. Azt írtad, hogy finomhangoltad a programot. Ha pontosan megméred a feszültség referenciát (pl. nálam 1.058V 1.100V helyett), és a feszültség osztó ellenállásokat is, és ezekkel az értékekkel számolsz, akkor nem kell semmi finomhangolás, mert pontos lesz. A hozzászólás módosítva: Okt 11, 2015
A 7805, illetve családja igazi őskövületek, amikbe a hobbisták beleszerettek miközben rengeteg alternatívájuk kapható manapság. Lehet persze használni őket, de referencia feszültségforrásnak tökéletesen alkalmatlanok, mivel már eleve elég nagy a szórásuk alapból is, de ez még a külső körülményektől változik is.
Tehát a pontos méréshez lehet használni a belső 1V1 referenciát (stabil, de alapból pontatlan, ki kell előtte mérni a uC-re jellemző feszültségét, erről már sokszor volt itt szó) vagy lehet használni külső referenciát is pl. a jó öreg TL431-et is, igény szerint akár ennek egy pontosabb verzióját is. |
Bejelentkezés
Hirdetés |