Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Ha megosztod ,hogy melyik rész lassitja úgy jobban átlátjuk.
Közben megcseréltem az inicializálásban két részt, így most gyors.
Ennek ellenére lenne olyan kérdésem (remélem nem hülyeség), hogy megoldható-e az, hogy az i2c kommunikáció ne multiplex legyen? Azaz csak adjon az Arduino, a másik meg vegye el a neki küldött utasításokat, és ne jelezzen vissza. Úgy érzem, hogy van visszajelzés a két eszköz között, ami késést okozhat... Egy egyszerű lcd.print()-ről van szó.
Ha a Slave nem küldene vissza semmit, akkor a Master sem küldene semmit
Ugyanis először a Master egy "figyelj" jelet küld, majd azt a címet, amelyik Slave eszköznek akar küldeni adatot, de ezt addig nem fogja megtenni, amíg a Slave nem jelez vissza egy "vettem" jellel. Tehát szükséges a két irányú kommunikáció az adatátvitelhez. Egy Print utasítás az LCD könyvtárban csak a portbővítő (PCF8574) regisztereibe ír és nem olvas ki semmit, csak "vettem" jel érkezik a Slave-től, más nem, az pedig nem lassíthat semmit, mert még buffert sem használ, hardver szinten van lekezelve. Ami a lényeg, hogy nem okozhat "késést". A multiplexelésnek meg nézz utána egy kicsit. A kód (vagy legalább a kritikus része) ismerete még mindig segíthetne a problémád megoldásában.
Ami sok késleltetést okoz, az I2C busz relatív lassú, es soros. Ha minden adat elküldésének a végét kivárja a program, az erős lassító tényező. Főleg hogy sorosan kell az LCD-nek több byte-ot küldeni, egy közvetítőn keresztül, relatív alacsony órajellel.
Az I2C buszon a visszajelzés csak annyi, a cím/ és adatok végén van egy plusz órajel, ami alatt a slave vagy a master nulla szintet ad. Ha ez a bit rendben akkor van kommunikáció, ha nincs rendben, azt jelenti hiba van. Ezt az óra jelet a master mindenképp küldi az I2C szabvány szerint, de ez 8 órajelenként 1 órajel, tehát olyan sok késleltetést nem okoz.
Sziasztok!
Feltettem a kérdésem egy másik fórumban is de hátha ez jobban pörög: Mégegyszer Sziasztok! Új vagyok az arduino világában, és hát láss csodát nem is akar működni a kis projectem. Ez egy régebben vásárolt (kínai) arduino nano ch340-es (feltehetőleg) illesztővel. Ha hülyeséget írnák, kérlek bocsássatok meg. Szóval szerettem volna 433MHz-es jelet venni egy kis vevővel, de nem veszi. A program már felmegy rá, de onnantól semmi. Innen vettem a mintát: https://www.youtube.com/watch?v=aP2UtQmsZUA MIntha a program egyik részében ez lenne írva: "All you need is a Arduino or Raspberry Pi, a 315/433MHz AM transmitter and one or more devices with one of the supported chipsets: - SC5262 / SC5272 - HX2262 / HX2272 - PT2262 / PT2272 - EV1527 / RT1527 / FP1527 / HS1527 - Intertechno outlets - HT6P20X" Lehet azért nem megy mert nem ilyen chipset van benne? Vagy ez nem az? Foglalkozott már valaki ilyesmivel? Köszönöm.
Szia
Amit belinkeltél ott csak a videót látom de hol a kód?
Szia!
Mivel írod hogy új vagy, azért megkérdezem, egy blink program működik az arduino lapodon? Lehet hogy nem is onnan indul a történet ahol gondolnánk! Csak azért gyanús, mert rádiós átvitel annyira nem "kis project". Ja, és írod hogy más a chipset amit használnál. De azt már nem árulod el hogy mi az. Ahogy kolléga irja, tessék forráskódot mutatni, hogy lássuk eddig mit csináltál! A hozzászólás módosítva: Okt 10, 2022
Az alkatrészlista meg a kapcsolási rajz is kéne ,hogy átlátható legyen. Vagy ha van weboldal ahol le van irva akkor az is jó.
Elnézést, ha nem volt részletes.
Link az oldalra:https://github.com/sui77/rc-switch Az examples között a ReceiveDemo_Simple, és ReceiveDemo_Advanced-et próbáltam. A kapcsolási rajz nagyon egyszerü: beillesztett képkép.
Megépítetted ezt a kapcsolást? ReceiveDemo_Simple csak a soros monitorra ir, próbáld ki a sendDemo.ino - t.
A hozzászólás módosítva: Okt 11, 2022
Szia!
Igen, mivel volt egy ilyen vevőm, és ezen kívül csak vezeték kellett. Délután összerakom a send-et is. Eddig megnéztem, hogy a D2-es működik-e. De működöt kimenetként is, meg bemenetként is. (led és nyomógonb próba felváltva). A send -en mit tudok monitorozni?
A send-be most nem tudod használni a soros monitort mert a loop-ba nincs kiadva a
Serial.println(); parancs. A soros monitort akkor tudod használni ha a zárójelbe beirod azt amit el akarsz végeztetni a kontrollerrrel PL:
és a soros monitorra kiírja , hogy Received A hozzászólás módosítva: Okt 11, 2022
Összeraktam, a sendDemo.ino -t és az működik! Az adót bekötöttem a 10-es lábra. A vevővnek adtam külső 5V-ot, és egy oszcilloscope-on néztem a válaszát. És megy.
Ha beírom a void loop-ba a Serial.println("Received"); akkor kíírja a Received-et a Serial Monitornál ciklusonként.
Töltöttem le másoktól is ezt a programot, de egyik sem megy. Mármint nem adja vissza a kódot.
Húha! Baj van!
Kipróbáltam egy másik távirányítót. És láss csodát, az működik! Kiírja amit szerettem volna. De akkor mi van ezzel a 433MHz-es távirányítóval?...... Mégse 433 MHZ-es? Pedig az van ráírva....
Sajnos kiderült, hogy a távirányító 433,92 MHz-en kommunikál.
Eddig sakk-matt. Ismer valaki ilyen arduinos megoldást? Köszönöm.
A fenti képeden úgy látom a frekit lehet "tekergetni"... Ha a data vonalra teszel egy ledet, akkor villog/működik a vétel? Nagyobb gond lehet hogy nem csak a 433 körüli frekvenciának, hanem a kódolási fajtának is stimmelnie kell, valamint a 433-ra ültetett jelfolyam frekvenciájának is illeszkedni kell (mint a baudrate a soros átvitelnél). De ha van működő cucc akkor mindez szkóppal ellenőrizhető/összehasonlítható
A readme-be azt irja, hogy ha nem müködik módositanosd kell az impulzus hosszát.
"RC kódok küldése Használja Arduino vagy Raspberry Pi eszközét a távirányítós rádióvezérlésű eszközök működtetéséhez. Ez valószínűleg minden népszerű, olcsó konnektorral működik. Ha az Öné nem működik, lehet, hogy módosítania kell az impulzus hosszát. Mindössze egy Arduino-ra vagy Raspberry Pi-re, egy 315/433 MHz-es AM-adóra és egy vagy több eszközre van szüksége a támogatott lapkakészletek egyikével: SC5262 / SC5272 HX2262 / HX2272 PT2262 / PT2272 EV1527 / RT1527 / FP1527 / HS1527 Intertechno üzletek HT6P20X RC kódok fogadása és dekódolása Nézze meg, milyen kódokat küld a távirányító. Használja a távirányítót az Arduino vezérléséhez. Nem kell más, mint egy Arduino, egy 315/433MHz-es AM vevő (bár instrukció még nincs, igenis lehet egy meglévő készüléket feltörni) és egy távoli kézi készlet. A Raspberry Pi esetében klónozza a https://github.com/ninjablocks/433Utils projektet egy szippantó eszköz és átviteli parancsok összeállításához. "
Akkor ezek szerint az a másik távirányitó lessz a nyerő.
Hát ezt kell összerakni. Ez a jele a klónozni kívánt távirányítónak:
Az nem jó. A redőny amit szeretnék vele vezérelni azzal nem tud működni, nem ahhoz való.
A teljes koncepció az, hogy egy esőszenzor jelére lemenjen a redőny. Ehhez nem akarom szétfaragni a mostani távirányítókat, klónoznám a jelüket, és így megmaradna mind a távirányító, mind pedig új vezérlő lenne, ugyan azzal a jellel. Amit aztán tovább lehetne bonyolítani új funkciókkal.
Nem kell semmit klónozni, ha új vevőegységed van. Egyszerűen csak a vevővel megtanítod a távirányítódat.
A vevő maga a redőny. És sajnos a redőny tanulja meg a távirányító kódját ami fix. Vagyis nem fogja megtanulni a más frekin lévő esetleg más hosszúságú kódot. Gondolom erre figyeltek a tervezői. De igaz, nem próbáltam ki. De ahogy írtam, szeretném megtartani a távirányítót is külön.
Ha eaetleg behalna a rendszer. Nincs külön kapcsolója a redőnynek csak az RC. Ezért mindenképp klónozni kell az eredeti távkapcs jelét. Valamint egyszerűség kedvéért egy oldalon több redőny is van. Amiket egyszerre, és külön is szeretnék vezérelni.
Sziasztok
Nano Vin lábára mehet 12V? A panel amit gyártatni akarok gerberként van fönt a neten, nem tudom módosítani
Mellékeltem a 2 oldal nyáktervét, az a gáz, hogy gerbert max nézegetni tudom, de visszarakni áramkörtervezőbe nem és nem látom, hol kapja meg a tápot a nano, Vin-re gondoltam, de már abba se vagyok biztos
Elvileg mehet, de azt jó tudni, hogy az LDO forrosodni fog ha nem csak az mcu-t táplálod vele.
csht, én már nyirtam ki nanót 12V-al azóta 7V megy be a vin en
Ezen a panelon a Vin sehova nincsen kötve. Gyanítom, hogy az USB csatlakozóról van megtáplálva a nano, meg a motorvezérlő logikai részének 5V-ja is.
A hozzászólás módosítva: Okt 12, 2022
Tényleg, de hülye vagyok, lézer CNC, eleve USB-ről megy.
Üdv!
Attiny 24/44/84 működik külső kvarc nélkül? Egy 10 LED-es akku feszültségszint kijelző lenne, így 10 láb kell a LED -eknek, 1 az analóg bemenet, és 1 marad szabadon az meg ugye nem elég a kvarcnak. De akkor 1 gomb lesz rajta, hogy némi üzemmódváltást is tudjak eszközölni. Ha már itt tartunk, a különböző hosszúságú gombnyomásra különböző funkciót megvalósító projektet tudtok nekem mutatni? Teszem fel rövid gombnyommás vált a vonal és pont kijelzés közt, hosszabb gombnyomás pedig ki/be kapcsolja a kijelzőt? Ui.: Igen tudom, hogy az LM3914 pont ezt tudja, de az nem tud töltést kijelezni, én meg szeretnék beleprogramozni töltési animációt is. A hozzászólás módosítva: Okt 13, 2022
|
Bejelentkezés
Hirdetés |