|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
king25 Član
Pridružen-a: Ned 18 Jul 2004 1:06 Prispevkov: 569 Aktiv.: 2.55 Kraj: Celje
|
Objavljeno: Pet Maj 22, 2015 7:43 am Naslov sporočila: Arduino mega 2560 |
|
|
Pozdravljeni,
Imam RF sprejemnik in iz dekoderja RF600D imam preko izhoda Serial data povezan na arduinota mega 2560 na RX1 vhod, kjer berem serijske številke (000209Da...), ki jih pošilja oddajnik-enkoder RF600E.
Sedaj me zanima ali je možno da te serijske vključim nekako v program, da mi vklaplja digitalne izhode?
Kot primer: ko arduino prebere 000209Da, bi na izhodu 22 dobil 1 in ko ne bere tega signala bi bila 0.
Delam en projekt kjer potrebujem 20 kanalni sprejemnik. Oddajnik mora imeti 20 tipk in sprejemnik 20 relejev samo on/off. |
|
Nazaj na vrh |
|
|
protoncek Član
Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 45.67 Kraj: Mengeš
|
Objavljeno: Pet Maj 22, 2015 1:40 pm Naslov sporočila: |
|
|
Niti ne razumem dobro vprašanja... namreč, zakaj se ne bi dalo? Če znaš programirati, potem je vse mogoče...
pač določiš vsakemu releju svojo številko. Potem gledaš sprejem: če je recimo sprejeta številka 10, se bo vklopil rele 1, če je sprejeta 11, rele2...
Če pa želiš neodvisne kanale (da bo mogoče vklopiti več relejev naenkrat) rabiš oddajati 20 bitov (recimo 3 bajte) in vsakemu releju dodeliš svoj bit v sprejeti kodi. Potem samo sprejeto kodo direktno pošlješ na določen port mege (recimo prvi bajt na portB) in nanj releje. v primeru recimo 01100001 bodo vključeni releji 1, 6 in 7. |
|
Nazaj na vrh |
|
|
king25 Član
Pridružen-a: Ned 18 Jul 2004 1:06 Prispevkov: 569 Aktiv.: 2.55 Kraj: Celje
|
Objavljeno: Pet Maj 22, 2015 1:47 pm Naslov sporočila: |
|
|
Hvala za odgovor. Jaz preberem 000209Da, 000209Db, 000209Dd... odvisno kateri gumb stisnem na oddajniku.
Se pravi bi moral te prebrane kode najprej pretvoriti v številke 10,11... in šele na to te številke dodelim izhodom? Jaz rabim samo da ima vsaka tipka svoj rele.
Upam da razumete, mogoče je malo zmedeno, ker delam to prvič in sem prišel samo do sprejetih kod in seveda zvezano imam vse samo sprogramirati še moram kar je seveda bistvo. |
|
Nazaj na vrh |
|
|
protoncek Član
Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 45.67 Kraj: Mengeš
|
Objavljeno: Pet Maj 22, 2015 2:09 pm Naslov sporočila: |
|
|
Torej: ali rabiš, da je rele vključen, dokler držiš tipko, ko jo spustiš, pa izklopi? V tem primeru samo v arduinu sprogramiraš serijo IF stavkov. C-ja ne poznam, zato lahko podam primer v bascomu:
If RX = 000209Da then set rele1 else reset rele1
If RX = 000209Db then set rele2 else reset rele2
ker ima arduino številke namesto "pravih" port oznak, mislim da gre to nekako v smislu digitalwrite, torej rečeš v IF stavku:
če sprejmem 000209Da, potem digitalwrite(11,high) sicer digialwrite(11, low).
če sprejmem 000209Db, potem digitalwrite(12,high) sicer digialwrite(12, low).
nekako v tem smislu. Kot rečeno, arduino je v C, tu pa jaz zmrznem za konkreten primer kode. |
|
Nazaj na vrh |
|
|
king25 Član
Pridružen-a: Ned 18 Jul 2004 1:06 Prispevkov: 569 Aktiv.: 2.55 Kraj: Celje
|
Objavljeno: Pet Maj 22, 2015 2:18 pm Naslov sporočila: |
|
|
Točno to, dokler držim tipko je rele vklopljen in obratno in hvala za primer kode. |
|
Nazaj na vrh |
|
|
king25 Član
Pridružen-a: Ned 18 Jul 2004 1:06 Prispevkov: 569 Aktiv.: 2.55 Kraj: Celje
|
Objavljeno: Tor Maj 26, 2015 6:30 am Naslov sporočila: |
|
|
Zanima me če obstaja še kakšen dekoder/enkoder da bi imel serial data izhod?
Namreč RF600D/E mi ne odgovarja, ker lahko na enkrat krmilim samo en izhod oz. aktiviram samo eno tipko in ne več hkrati
Zadevo sem že rešil z arduinotom ampak ne bo ok, ker ne morem več izhodov hkrati vklopit vsaj dva, enkoder tega ne dopušča. |
|
Nazaj na vrh |
|
|
protoncek Član
Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 45.67 Kraj: Mengeš
|
Objavljeno: Tor Maj 26, 2015 7:25 am Naslov sporočila: |
|
|
Ja, narediš si svoj dekoder s kakšnim avrjem, pa je. Sprogramiraš obratno kot na sprejemnem delu. |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 70 dni
Powered by phpBB © 2001, 2005 phpBB Group
|