Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Ezt én is látom google nem talál semmit róla...
Mit kellene találnia? Visszaadja a puffer üres (fel nem használt) karaktereinek a számát.
Ebben a projectben azt valósították meg, amit te szeretnél!
Connecting Arduino to Processing Bővebben: Link Ebben a bemutatóban megtanuljuk: Hogyan küldjünk adatokat az Arduino-ból a feldolgozáshoz a soros porton keresztül Hogyan lehet adatokat fogadni az Arduino-tól a feldolgozásban? Hogyan küldjünk adatokat a feldolgozásról az Arduino-ra Hogyan lehet adatokat fogadni az Arduino feldolgozásáról? Hogyan írhatunk soros "kézfogást" az Arduino és a Feldolgozás között az adatáramlás szabályozásához A hozzászólás módosítva: Márc 27, 2018
Sziasztok
Egy SIM800l modult szeretnék hívással feléleszteni és azonosítani a hívót!
A fenti kód működik de egy igen zavaró probléma adódik a kb. 3-4 hívás után. A modul feléledésekor értelmetlen nem ovasható karakterek érkeznek a modul felől. És így már nem lehet kiolvasni a hívó számát. Mit lehet tenni ilyenkor?
Kósza ötlet: Hívás után újraindítani a modult?
constrain limitet használnék de constrain(month, 0, 12); engedi pl 99 is!
Tehát azt mondod, hogy az
A hozzászólás módosítva: Ápr 1, 2018
igy jolet...
Arduinosok, kérlek segítsetek!
Egy AD7715 SPI buszos A/D konvertert kell kiolvasnom, de nem megy. Hogy az áramkör hibát kiküszöböljem kipróbáltam BS2SX mikrovezérlővel , amivel tökéletesen működik. Ugyan erre bekötöm az ARDUINO UNO-t és nem megy. Tehát az áramkör jó, a programmal lesz a gond. Ide teszem mindkét programot. - Igazából nem értem hol van definiálva, hogy az arduino SPI.h könyvtár utasításai a 13-11 lábakat használják, de mivel a mintaprogramokban sincs ez beállítva, ezért én is ezekhez kötöttem. Tényleg hol van ez leírva, mert az arduino reference -ben sem találok rá utalást?! - Igen tudom , hogy nem kell minden olvasás előtt beállítani az x10 x68 setupot, de a BS2-vel így is működik, tehát nem ez a probléma. BS2SX program (ami működik):
A hozzászólás módosítva: Ápr 5, 2018
Moderátor által szerkesztve
Idézet: „Igazából nem értem hol van definiálva, hogy az arduino SPI.h könyvtár utasításai a 13-11 lábakat használják” Szerintem az hardveresen van definiálva. Egyszerűen a chip ezen lábainak ez az alternatív funkciója.
Ezeket már nem kel a begin után állítani:
Igy próbáltad?
A hozzászólás módosítva: Ápr 4, 2018
Légy szíves, kód beszúrásához használd a hozzászólás író ablakban található "Kód" gombot!
Köszönjük.
kapu48 !
Igen! Így már megy, zseni vagy! Az SPI.transfer függvényt úgy kell meghívni ahogy leírtad. Még az SPI_MODE0 helyett SPI_MODE3 -at állítottam be (CPOL = 1 , CPHA = 1) mert úgy látom az AD7715 adatlapján, hogy úgy szereti. De ez nem változtatott a program kimenetén. Érdekes... A kiírt érték stabil és az analóg feszültség változását követi. Ide teszem a működő programot, hátha valakinek majd segít aki pont ezzel kínlódott:
Már csak a sorrenddel van probléma!
Első a: SPI.begin(); Uttána jöhet a többi: SPI.xxx(); Tutorial: Arduino and the SPI bus
Arduino Nano-t szeretnék használni úgy, hogy sleep-ből csak igen rövid időre ébredjen fel (10..30ms), végezze el a dolgát, majd menjen vissza megint sleepbe.Sleep alatt 10uA alatti fogyasztást szeretnék, mivel akkus táplálású az eszköz.Ébrenlét alatt 40..80mA-et fogyaszt max. 1 ms-ig, majd 5..10 mA-ert a fennmaradó ébrenléti időben (10..30ms).
A tesztelések alatt szembesültem azzal, hogy nem tudtam sleep alatt még csak megközelíteni sem a 10 uA-ert. Ha a teljes rendszer tápfeszültségét kikapcsoltam (nulla fogyasztás), akkor a tápfesz megjelenésekor az arduino rendszer 2-4 sec mulva indult el, és ez alatt persze nagy volt a fogyasztás.Gondolom a bootloader rész "huncutkodik", ezért ezt szeretném kikapcsolni, hogy azonnal késedelem nélkül induljon a program végrehajtása (ne várjon programbetöltésre !). Másik megoldási lehetőségem az lenne ha sikerülne sleep alatt levinni az AVR fogyasztását 10 uA alá. PIC32MM0064GPL028-al sikerült sleep alatt a rendszer összfogyasztását 4 uA alá vinni, de itt meg a "nyavalyás" NRF24L01-et nem tudom egzaktul lekezelni.Ezért próbálnám arduino-val megoldani a feladatot. Tudtok valami megoldást javasolni AVR-re? Előre is köszönöm: mcucoder
A kérdésed mehetett volna egyből az Arduino topikba.
Szóval, ha már kész az Arduinos- programod, normál AVR programozóval kellene feltöltened a kódot, úgy, hogy felülírod, és ezáltal "letiltod" a bootloadert. Sejtem, hogy azt szeretnéd, hogy feltlötöd a programod bootloaderrel, majd kikapcsolod. De akkor soha nem tudna újból aktívvá válni. Ezesetben később kellene a programzó, ha hozzá kell nyúlni ismet. A hozzászólás módosítva: Ápr 5, 2018
Köszönöm!
Megpróbálom, van AVR programozóm. Az AVR fogyasztását hogyan tudom minimalizálni sleepben ? Erre is van javaslatod ? Idézet: „Az AVR fogyasztását hogyan tudom minimalizálni sleepben ?” Attól függ, mit akarsz életben tartani sleepben, és mivel akarod felébreszteni. Amúgy a Google a barátod. http://lmgtfy.com/?q=reducing+Arduino+power+consumption+sleep+mode A hozzászólás módosítva: Ápr 5, 2018
Az alaplapi LED-eket leszedted? Az USB-soros konverter IC fogyasztásával mi lesz? Felhúzó ellenállások (ha vannak)?
Miért ragaszkodsz az UNO-hoz, használj Pro Mini-t.
https://www.gammon.com.au/forum/?id=11497 A hozzászólás módosítva: Ápr 5, 2018
Szia!
Idézet: „Attól függ, mit akarsz életben tartani sleepben, és mivel akarod felébreszteni.” Ha jól értelmezem, akkor sleepből (legkisebb fogysztású mód) csak külső interrupt, vagy ha a WDT engedélyezve van, akkor a WDT is ébreszthet. Esetemben a külső interruptot nem szivesen használnám (+ áramköri elemek.. ) a WDT-vel viszont nem tudok 3-5 ms felbontással időzíteni. Timer2-vel (asyncron mode) lehetne, de sleepben az aszinkron TMR2 (32768 quarc) nem fut ! Milyen egyéb megoldás lehetne még ?
https://github.com/rocketscream/Low-Power
Itt be tudsz állítani altatási ciklusokat, 8 mp a maximum, de azt tetszőleges számban lefuttathatod. Ha pontosabb időzítés kell, beraksz egy RTC-t.
Nagyjából megirták a többiek a választ, ill a http://www.gammon.com.au/power -t érdemes végignézni. Hogy neked mi az optimális, kiválaszthatod.
És, valóban, nem Arduinoban érdemes gondolkozni, mert az USB-serial eleve sokat fogyaszt és nem kapcsolható sleep-be. Hanem "pucér" Atmega328P + kvarc.
Idézet: Szia!„Ha pontosabb időzítés kell, beraksz egy RTC-t.” Melyiket? Mert a legtöbb RTC-nél 500 ms, 1s, vagy nagyobb értékek állíthatók be. Nekem meg 3900 - 4100 ms közti időzítés kell 3-5 ms felbontással. mivel a sleep hosszát minden belépés előtt be kell állítanom, és ciklusról ciklusra esetenként más értékekkel. PIC-nél a Timer1 időzítőt használva 32768 kvarccal (ami sleep alatt is fut 1 uA alatti fogyasztással) ezt sikerült megoldanom, de sajna az NRF24L01 kezelését nem tudtam egzaktul leprogramozni. Ezért kellene az AVR (arduino) a "jó kis RF24 lib-el" (kipróbáltam, ez legalább üzembiztosan megy), de hát itt meg a fogyasztással küzdök.
Magyarul 4 mp-két akarsz ébreszteni, lefut egy művelet, visszaaludni?
pl. : https://github.com/rocketscream/Low-Power/blob/master/Examples/powe...ic.ino A hozzászólás módosítva: Ápr 5, 2018
Felejsd el az AVRt.
És használd ezt: Bővebben: STM103 Beépítet USB és RTC, és minden fogyasztást tudsz szabályozni. Teszel mellé 3V-os gomb ellemet. Ha lejjebb veszed az órajelet még kevesebbet fogyaszt. Mindezt Arduino IDE alatt. A hozzászólás módosítva: Ápr 5, 2018
Idézet: „Magyarul 4 mp-két akarsz ébreszteni, lefut egy művelet, visszaaludni?” Köszönöm a hozzászólást. Inkább úgy mondanám hogy 3-4-5-6-n másodpercenként, de mivel több eszköz (több AVR-el) megy egyidőben, és mindegyik csak a saját 20-30 ms-os időablakában működhet, ezért biztosan lesz eltérés az egyes AVR példányok WDT időalapja között, ezért ciklusról ciklusra mindegyik eszköz "szinkronizál" egy 2,4GHz-en vett központi időalaphoz.(Az eszközök nem működhetnek egy időben, vagyis egy adott időablakban csak 1 eszköz mehet!) Tehát kellene a 3-4 ms-os felbontás, és mondjuk max 65 sec-os max. hossz. Másik kolléga javasolta az STM103-at. Megnézem ... Idézet: „És használd ezt: Bővebben: STM103” Szia! Kösz az ötletet. Adatlap szerint az RTC legkisebb beállítható hossza 1sec! Az előosztóval (20 bites) ezt hosszabíthatjuk meg. Sajna ez így nem jó, mert nem tudok tetszőleges hosszt beállítani. Pl: 3954 ms-ot, vagy 4076 ms-ot, stb ... Pedig már reménykedtem ...
Téves az RTC ismereted!
Korlátlan az alarm funciója, és bármikor ujra programozhatod. Mivel belső eszköz, ezértmég plusz megszakítás pint sem foglal. Bővebben: RTC Bővebben: NRF.. A hozzászólás módosítva: Ápr 5, 2018
|
Bejelentkezés
Hirdetés |