Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Mért bonyolítod el ennyire ?
Már fent jeleztem a 4 db 8 bites shift regisztert kell összekötnöd egymás után felfűzve. Az első 2 a sorokat a második kettő az oszlopokat címzi meg. 16*16 sor*oszlop így 256 ledet tudsz elérni , 4*8bit adat segítségével amit 3db biten küldesz ki clock, data, latch bitek. A hozzászólás módosítva: Máj 13, 2014
Értem, amit mondasz, de nem tudom megvalósítani nulláról. 1 éve azt se tudtam, hogy kell a lednek áramkorlát. Ez meg itt egy kész rajz. A Te megoldásodról még laikusként is értem, hogy mennyivel egyszerűbb, de nem tudnám összerakni normális időn belül.
Minden ott van az arduinos lapon amit linkeltem kb az alsó harmadában ... nézd át ...
Igaz ott csak 2 db 74hc595 van egymás után kötve ... remélem megnézed a linket még egyszer nem idézem be. Ha 2-t összekötöttek akkor 4et is össze tudsz ugyan úgy .... aztán a kimeneteik közé pedig a ledeket kötöd be mátrixnak megfelelően. Ahogy a 8*8 ban is van csak 16*16 ra kell módosítani. ez a képaz amit keressél !!! ezt kell mégegyszer egymás után felfűzni A hozzászólás módosítva: Máj 13, 2014
Az elbonyolított kész rajzra mint hardver működését érted ?
Tudnál rá írni szoftvert ami mozgatni is tudja?
Köszönöm. Átnéztem azt az oldalt, igen, de még mindig nem tudom, hogy megyek vele LPT portra. Például így? Bővebben: Link
Nem értem, a szoftvert viszont hamarabb megtanulnám, mint ahogy elkészül a hardver.
Olvassál vissza azt is leírtam már , lábak kiosztásával 74595 esetén.
Légyszives ismerkedjél meg a shift regiszterekkel pl.: 74595 adatlapjával a benne lévő működésüket leíró táblákkal. Ha azt érted akkor az lpt port 3db kimeneti adatbitjével megtudod mozgatni a regisztereket, hogy beléjük kerüljön az a 32 db 8*4 bit ami felgyújtja a ledeket.
Próbapanelon pár tucat köteg fali utp kábelből faragott vezetékből fél óra alatt össze dugdosható az egész és már tesztelheted is.
Igaz a led mátrix kissé idő igényesebb lesz összekötni. Háát ha nem érted a hardvert akkor elég nehéz úgy a szoftvert is rá megírni ...
Az LPT adatbitjei megvannak, de a működés megértése keményebb dió lesz. Nem tanultam digitális technikát, se elektronikát.
Nem olyan veszélyes, nézegesd az adatlapokat ( főleg az ábrákat!)!
A hozzászólás módosítva: Máj 13, 2014
Hhhmmm akkor most kissé rá kellene állni az ismerkedésre a digitális technikával és az elektronikai alapismeretekkel ... Így nehéz segíteni ha nem is tudsz kérdezni ... légy szíves olvassál utána , és ha van konkrétabb kérdés akkor tedd fel ...
Jelenleg a shift regiszterek , digitális áramkörök kapuk , tárolók téma köre érdekes, no meg az egység terhelés kérdése , uC rendszerek illesztése a külvilághoz , lpt port galvanikus elválasztása .(inkább legyen ilyen rajta minthogy lpt portokat nyírjál ki ).
A hozzászólás módosítva: Máj 13, 2014
A galvanikus elválasztás meg a terhelés meg a logikai kapuk hagyján, mert ezeket értem, nem rég egy digitális technika könyvet is kiolvastam, de hogy mikor lesz ebből nekem működő mátrixom, az még egy érdekes móka lesz.
Végül is kutattam még és az lett a vége, hogy veszünk 10-15 USB-s LPT portot és azokról lesznek megvezérelve a ledek.
Szóval itt van 16*16 db mátrix meghajtója.
Légy szíves ne kívánd azt hogy minden ledet berajzoljak mert azt már lerajzolták az általad linkelt 8*8 as mátrixban. Azt követve betudod drótozni a 16*16 ledet is!. Nem kell 2 db serial adat bemenet mint a 8*8as nál hanem csak fel kell fűzni a 4 db soros beki menetet egymással 14 lábon beérkezik az elsőbe majd utána a 9es lábán a második ic 14es soros adat bemeneti lábára kerl és így tovább az összes többin 14es be majd 9esen ki. Így van 3 db bited amin keresztül vezérelheted a 256 ledet. A soros órajel biten keresztül 32 db órajelet kell generálnod. 0 1 0 mintát 32 szer. (alapesetben 0 szintű) Ez alatt a az ADAT bitekre rá kell tenni azt az értéket 1/0 amit ki akarsz küldeni a 4*8 byte X. edik bitjénél.(amikor az órajel bit is magas) Ezek után ha bekerült a 32 db bit a regiszterben akkor kell egy 0 1 0 mintát küldeni a soros LATCH bitre ami által a kimenetre íródik a betárolt 32 bit állapota a 74595nél.(pontosabban mindig 0 és amikor átírás kell arra a kis időre lesz 1 és majd megint 0) Az optocsatolók leválasztanak lpt/uC portról. Bármilyen kis/közép teljesítményű NPN tranzisztor megfelel a BCxxx sorozatból. A hozzászólás módosítva: Máj 13, 2014
Nekem szimpatikusabbnak tűnik a MAX7219, ami szintén felfűzhető az SPI buszra, s darabonként 64 db(8x8-as mártixba szervezett) LED meghajtására alkalmas, beépített áramkorlátozással és teljesítmény kimenettel. Nem kellene a sok külső alkatrésszel vacakolni.
E-bayről elég humánus áron beszerezhető (én 8x8-as LED mátrixot is tartalmazó KIT-et vettem, az sem volt egy ökör ára).
Igen valóban ... de ha az alapvető eszközökkel sincs tisztában akkor legalább ismerkedjen meg velük ... aztán ha már tudja mit csinál miért és mivel akkor aztán lehet tovább lépni
Nem szerettem volna mélyebb vízbe lökni ... 8*8 meg kevés , 16*16 kell az meg már több maxim IC , persze az is felfűzhető soros kommunikációval de sokkal több regisztert is kell kezelni , e helyett csak 4db 8 bitest . A hozzászólás módosítva: Máj 13, 2014
Idézet: Ez így egy kicsit csalóka összehasonlítás, mert a 4x8 bites regiszter nyilván nem tartalmazza a 256 db LED állapotát, tehát sokszor kell irkálni.„de sokkal több regisztert is kell kezelni , e helyett csak 4db 8 bitest .” A MAX7219 esetében a "sok" regiszter viszont minden vezérelt LED állapotát tartalmazza, a multiplex kijelzést autonóm módon, hardveresen végzi. Tehát a programozás is egyszerűbb, mert csak változás esetén kell adatot kiküldeni, s a hardveres megépítés szempontjából is egyszerűbb. Ha a vezérlés Arduinoval történik (ha már ebben a topikban vagyunk, mivel is történne mással?) akkor az egész gyerekjáték, hiszen a kész LedControl könyvtárat használhatjuk. Persze, nem ez az egyetlen, vagy a legjobb megoldás, hiszen a Holtek HT1632 vezérlője egymagában 16x24 vagy 32x8 LED mátrix meghajtására is képes és Arduino programkönyvtár is van hozzá. Bővebben: Link A hozzászólás módosítva: Máj 13, 2014
A Sure Electronics-nél 1x4, 2x3, 2x4-es mátrixban összerakott 8x8-as, 3 vagy 5 mm-es LED-es, kaszkádba köthető kijelzők (többféle és akár kettős színben is) kaphatóak HT1632C (SPI like) vagy HT1631 meghajtóval, példaprogramokkal. Néha kedvezményes áron (1x4-est egyszínűt HT1632C-vel 12,9 helyett 8 $-ért vettem).
Ebay-en is vásárolhatóak a Sure paneljei. Előző hozzászólásban icserny kolléga utalt Arduino-s meghajtó szoftverre. Sajnos nincs közöm hozzájuk, ezért ez nem reklám, csak hobbista ötletadás. A hozzászólás módosítva: Máj 13, 2014
Sziasztok!
Olyan kérdésem lenne, hogy ha inicializálom a programomban a soros kommunikációt ( Serial.begin(9600) pl.) és utána írok egy olyan függvényt, ami folyamatosan adatot küld a számítógépnek, ezt a programot feltöltöm egy Arduino UNO panelre, és utána - tegyük fel - kiveszem a foglalatából az ATMEGA328-as chipet a panelból és beteszem egy próbanyákba, akkor ahhoz, hogy a géppel tudjon így is kommunikálni, csak annyi a dolgom, hogy veszek egy TTL-USB átalakítót, aminek a kimeneteit egy USB kábelra illetve az ATMEGA328-as chip RX, TX kimeneteire kötöm, vagy ennél bonyolultabb az élet?
Jól gondolod, a kristály is maradjon 16MHz.
Bonyolultabb :
- kell a tápszűrés, kvarc, resetrész, szűrőkondik és a kvarc mellé kondik.
Jah xD
Én igazából csak arra voltam kíváncsi, hogy a programban használt soros kommunikációs függvények végzik-e a handshaking-et és az adatok becsomagolását, vagy a panelon lévő ATMEGA8U2 chip?
Sziasztok!
A kérdésem az lenne, hogy van egy arduinóm 328-cal és ha sima delaymicroseconds fügvénnyel csináltam 20us-os tüskéket ms-onként, akkor az impulzusok nem egyforma hosszúak, néha hozzátesz az impulzus hosszához még kb 4us-ot. Illetve ha egy periódikusan ismétdlődő jelalakot próbálok mérni a saját adc-vel ott nagyon ingadozik a mért érték. Hozzáteszem a jel hossza kb 60us. Tehát a kérdés akkor az mi okozza ezeket a pontatlanságokat? Maga az arduino, vagy az avr nem képes erre?
Sziasztok!
Tudtok-e arduinohoz olyan függvényt, vagy valami algoritmust, amivel egy tömb adatait növekvő, vagy csökkenős sorrendbe lehet rendezni?
Az arduino keretrendszer. A háttérben 4-5 megszakításkezelő is fut.
4usec az kb. 16 asm utasítás.
Itt található erről egy topik néhány mintapéldával.
GYerekek! Ebben az izeben nincsenek Byte I/O muveletek? Csak bitbillegtetessel lehet a kimeneteket alligatni? Mert olyan szep hazardokat lehet vele csinalni, hogy na.
|
Bejelentkezés
Hirdetés |