Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
A while(buttonPushCounter == 2) egy végtelen ciklus. Abba beragad és nem is foglalkozik többet a gombnyomásaiddal.
És valahogy át lehetne írni, hogy kilépjen?
Én is így tudtam, hogy ha van SD begin akkor inicializálja a kártyát és minden megy tovább...
Nem vagyok nagy arduinos sőt semmilyen program nyelvet nem nagyon ismerek, inkább több programból összevágom ami nekem kell, illetve kísérletezek. Azt se mondom hogy nem én rontottam el valamit (múltkor kb 10 percig kerestem egy nyitott zárójelet ) Igen a GPS vevőm kb 2 perc az átlag míg küld adatokat. Még úgy is hogy lehuzom és egyből vissza adom neki a tápot. (NEO 6M ebay-es)
Sziasztok! Egy arduino due modult programozok és jól jönne egy kis segítség.
Esetleg valaki foglalkozott e már mélyebben a DAC- al? Pontosabban arról lenne szó hogy szeretném feléleszteni benne a DMA vezérlőt.
Sziasztok!
Olyan kérdéssel fordulok hozzá ,hogy az adott vezérlő panelre hová forrasszam a vezetékeket ahhoz,hogy ardunion keresztül felismerje tehát RX és TX kellene(Phantom 3 4K tav panelrol van szo)
Sziasztok!
Egy infra távirányítóval szeretnek ledet vezérelni. A ledet szépen ki és be bírom kapcsolni, ám amikor azt a gobot nyomom meg, hogy változzon a fényereje folyamatosan(fade), akkor csak akkor fut a program ha nyomvatartom a gombot a távirányítón. Hogyan kéne átírni a kódot?
Csináljál egy fadder függvényt ami csak a fényerővel játszik úgy ahogy szeretnéd, folyamatosan ciklusban fut.A ciklusból való kilépési feltételét , érdemes a ki/be kapcsoló infra jelsorozat figyelésével megszakíthatóvá tenni.
Aztán ezt a függvényt (alprogramot) hívd meg a második switch - case feltételes eset választó utasítás párral.
Multitasking használata célszerű már ennél a problémánál. A delay függvény hanyagolandó mert késlelteti a program reakció idejét ezért kell helyette a millis-t használni a lenti hivatkozások ezt segítik megérteni.
használható linkek : multitasking 1 összefoglaló delay vs millis
Sziasztok!
Segítségeteket szeretném kérni. Mivel még nem volt dolgom arduinoval ezért írok ide. Szeretnék reléket vezérelni interneten keresztül telefonról akár gépről. 6 db mágnesszelepet akarok kapcsolni vele külön-külön (öntözőrendszer mágnesszelepjei) kérdésem az lenne hogy mennyi fantáziát láttok benne, mennyire nehézkes egy ilyet összehozni?
Szasztok!
Egy DUE modult használok és éppen a megszakításokkal bajlódok. DMA vezérelten használom az egyik dac kimenetét magas prioritású megszakításban, és szeretnék ebből a magszakítási rutinból egy bizonyos esetben egy alacsonyabb prioritású megszakítást aktiválni hogy amint ez a magszakítás lefut, az legyen az elsődleges feladat hogy azt is elvégezze és majd csak aztán térjen vissza a főprogramhoz. De miközben az alacsonyabb prioritású rutin van feldolgozás alatt időnként esélyes hogy azt is meg kell szakítani és a magasabb prioritású gyorsabban lefutó megszakításba is vissza kell térni. Ezért mindenképpen előnyös lenne hogy programból tudjam aktiválni az alacsonyabb prioritású megszakítást. A kérdés az lenne hogy van e rá mód a periférikus megszakítások babrálása nélkül egy szoftveres megszakítás generálni?
Egy arduino, ethernet shield, es relé shield szükséges hozzá. Programozásban meg segítünk.
Itt egy tutorial: Bővebben: Link jól összefoglal mindent.
Szia!
Van fent a neten pár project ezzel kapcsolatban.Bővebben: Link Bővebben: Link Legegyszerűbb valamelyiket lemásolni és akkor nem kell programot írni sem (bár ez lehet hátrány is).
Üdv!
készítettem Arduinoval egy "öntözés vezérlőt" igazából 14 kimenetem van és ezek a kimenetek közti váltási intervallumot tudom váltotzatni lenne eg olyan plusz feladatom még vele, hogy akarok berakni egy dip sort és 14 dip kapcsolóval és ezzel azt szeretném megvalósítani, hogy ha mondjuk az 1-es és 14es dip alacsony szinten van akkkor ne úgy menjen végig a ciklus, hogy 1-14ig hanem az 1es és 14est kihagyva menjen ezt hogyan lehetne megoldani?
Logikailag úgy tudod ezt megoldani, hogy mindegyik relé kimenethez hozzá rendelsz egy kapcsoló bemenetet, és azt a feltételt vizsgálod, hogy a soronkövetkező relé az időzítőtől bekapcsoló jelet kap, és a hozzárendelt kapcsolója is pl magas szinten van, akkor indulhat a beállított időzítés.
Ha a hozzá tartozó kapcsoló alacsony szinten van, akkor meg azt a ciklust átugorja, ami az adott relé időzítését vezérli, és vizsgálja a következő relé kapcsolóját...
Sziasztok.
Arduino alatt letezik olyan függvény amivel egy lépésben meg lehet határozni hogy két érték közül melyik kisebb / nagyobb ?
erre gondolsz? a stat nálam egy változó amit növelek, ha egy feltétel nem teljesül
A hozzászólás módosítva: Júl 10, 2016
Ilyesmire, de a programozásban talán más jobban tud segíteni, én a dolog logikai oldalára próbáltam egy ötletet adni...
Programozásban még nem vagyok olyan nagy ász, sajnos...
Szerintem nem, hiszen 3 állapot létezik kisebb, nagyobb, egyenlő.
Egyik nagyobb, egyenlő és ha egyik sem (if, if, else) ez lenne az én megoldások.
Amit szeretnék tudni az hogy létezik ennél rövidebb is ?
Szia!
Szerintem létezik, amennyiben egyre gondolunk! Bővebben: Link Ehhez azonban a két változón kívül kell egy harmadik, amennyiben nem valami if szerkezetbe teszed. Megy ez min-re is.,
Tényleg. Köszi
Nem kell a harmadik úgy hiszem A hozzászólás módosítva: Júl 10, 2016
Ilyet hol érdemes venni esetleg valami megbízható helyet tudsz mondani?
Az if lehetőségei:
x == y (x is equal to y) x != y (x is not equal to y) x < y (x is less than y) x > y (x is greater than y) x <= y (x is less than or equal to y) x >= y (x is greater than or equal to y) Vagy azt nem értem mit szeretnél, vagy azt miért kell két if .
Pl itt:
Arduino Uno alaplap... Arduino hálózati kártya... Arduino relé kimenet... vagy a relé helyett: Arduino szilárdtestrelé kimenet... Ha mindezt itthon akarod beszerezni, kb 4-5 -ször ennyibe fog kerülni... Sok sikert a projekthez...
Sok megoldás lehet, de egyelőre nem értem a kört. Mennyi digitális láb van az arduinon? 14-t lefoglasz gondolom a reléknek. Ezen kívül lenne még 14 láb a kapcsolóknak, amik szintén digitális lábakat húz fel 1 re vagy húz le 0-ra?
Nekem csak nano-m van, azon nincs ennyi digitális láb, ezért kérdezem. Ha van 28 digitális láb, akkor lehet úgy, hogy egy cilkus végigballag a dip kapcsolók lábán, kiolvassa, hogy high, vagy low, majd annak függvényében elmented az értékeket egy tömbbe, úgy, hogy ha high akkor 1, ha low akkor 0. ciklus i=0 tól 13 'Jobb lenne, ha a ciklusod a lábak számával menne, ez a megoldás csak erre jó eddig, azaz a dip-ek mondjuk 0 től 13 ig vannak kötve az arduinon ha digitális láb=high lábak_tömb(i)=1 különben lábak_tömb(i)=0 Utána pedig simán ciklus 0 től 13-ig, majd a ciklusmagon belül egy darab if. ciklus i= 0 tol 13 ig ha lábak_tömb(i)==1 és valami ami alapján kapcsolod a relét Bekapcsol a relé. Az azonban fontos, hogy az itt definiált i láb a MEGFELELŐ lához tartozó relét kapcsolja! Relék ekkor 14-27 lábakon kellenek hogy legyenek, mert ilyenkor digitalwrite(i+14)=high al tudod bekapcsolni a reléket. Vagy másik megoldás.Ha a pin kapcsolók 1-15 lábakon vannak, míg a relék 16-29, valamint a pin kapcsoló 1 a 16-os lábon lévő relét bírálja felül, a pin2 kapcsoló pedig a 17 lábú relét szabájozza akkor: for i= 1 től 15 ha digitalread(i)==High és ami kapcsolja neked a relét digital write(i+15,HIGH) azaz bekapcsolja a relét, elindul az öntözés. Annyi kell, hogy a ciklusod végigmegy mindenen, de ha az épp aktuális lábat nem kell használnia, akkor nem kapcsolja be. Amúgy pedig nem lenne jobb, ha a pin kapcsolókat sorbakötnéd az arduino azon lábaival amik a reléket szabályozzák? Így semmi kód nem kellene..
Megát használok és az a baj ezzel a sorbakötéssel, hogy ha 1 kört kiveszek akkor azon is lefut az időzítés tehát pl, ha lekapcsolom az 1es kört és mondjuk 5 perc az időzítésem akkor a 2es kör már 10 perc múlva fog bekapcsolni 14db kimenetem van amit használok jelenleg, ha egyszerúbb akkor bemásolom az egész kódot ezt az egész tömbös dolgot még nemnagyon értem, deha ezzel a megoldással csinálom meg akkor kifogja hagyni az időzítést? vagy ugyanúgy lefut? egy Millis függvényel van megoldva a visszaszámlálás
így nézne ki és ha nem teljesül a feltétel akkor egy stat változót növel és mindig rákérdezek egy if-el A hozzászólás módosítva: Júl 11, 2016
|
Bejelentkezés
Hirdetés |