Sadržaj:

Charlieplexing LED diode- teorija: 7 koraka (sa slikama)
Charlieplexing LED diode- teorija: 7 koraka (sa slikama)

Video: Charlieplexing LED diode- teorija: 7 koraka (sa slikama)

Video: Charlieplexing LED diode- teorija: 7 koraka (sa slikama)
Video: ТАКУЮ ТЫ ЕЩЕ НЕ ВИДЕЛ!!! PTZ Wifi камера со СЛЕЖЕНИЕМ ЗА ЧЕЛОВЕКОМ 2024, Jun
Anonim
Charlieplexing LED diode- teorija
Charlieplexing LED diode- teorija
Charlieplexing LED diode- teorija
Charlieplexing LED diode- teorija

Ovo uputstvo manje je izrada vlastitog projekta, već više opis teorije charlieplexinga. Pogodan je za ljude s osnovama elektronike, ali ne i za potpune početnike. Napisao sam to kao odgovor na mnoga pitanja koja sam dobio u svojim prethodno objavljenim Instructables.

Šta je 'Charlieplexing'? Pokreće puno LED dioda sa samo nekoliko pinova. U slučaju da se pitate Charlieplexing je dobio ime po Charlesu Allenu u Maximu koji je razvio tehniku. Ovo može biti korisno za mnoge stvari. Možda ćete morati prikazati informacije o statusu na malom mikrokontroleru, ali imate samo nekoliko pinova rezervnih. Možda ćete htjeti prikazati otmjenu matricu ili prikaz sata, ali ne želite koristiti mnogo komponenti. Neki drugi projekti koji pokazuju charlieplexing koje biste mogli pogledati su: Kako izvesti mnogo LED dioda s nekoliko pinova mikrokontrolera. by Westfw:- https://www.instructables.com/id/ED0NCY0UVWEP287ISO/ I nekoliko mojih projekata, sat Microdot:- https://www.instructables.com/id/EWM2OIT78OERWHR38Z/ Sat Minidot 2: - https://www.instructables.com/id/E11GKKELKAEZ7BFZAK/ Još jedan zgodan primjer korištenja charlieplexinga nalazi se na: https://www.jsdesign.co.uk/charlie/ Sat Minidot 2 uvodi naprednu shemu charlieplexinga za blijeđenje/zatamnjenje o čemu se ovdje neće govoriti. AŽURIRANO 19. avgusta 2008: Dodao sam zip datoteku sa krugom koji bi mogao iskoristiti matrično charliplexing za LED diode velike snage o kojima se raspravljalo (opširno:)) u odjeljku komentara. Ima tipku + koder položaja za rad sa korisničkim sučeljem, plus sklop za USB ili RS232 kontrolu računara. Svaka od visokonaponskih šina može se postaviti na jedan od dva napona, recimo 2,2 V za CRVENE LED diode i 3,4 V za zelenu/plavu/bijelu. Napon za visoke bočne šine može se podesiti trimpotom. Predviđao bih da se 20 -žični IDC kabel s vrpcom uključi u ploču, a 20 -pinski IDC konektori dodaju duž dužine vrpce, pri čemu svaka LED ploča ima veze sa bilo kojim žicama u matrici koje se žele. Kolo je u Eagle Cad -u i prikazano je na donjoj slici ispod. Visoko bočno kolo implementirano je upotrebom optokaplera za koje mislim da bi moglo biti prikladno. Zapravo nisam testirao ovo kolo niti napisao neki softver zbog nedostatka vremena, ali sam ga stavio na komentar, posebno me zanima implementacija optičke sprege. Svatko tko je dovoljno hrabar da to pokuša … molim vas objavite svoje rezultate. AŽURIRANJE 27. avgusta 2008: Za one koji ne koriste EagleCad….dodato je pdf sheme

Korak 1: Neka LED teorija

Neka LED teorija
Neka LED teorija
Neka LED teorija
Neka LED teorija

Charlieplexing se oslanja na brojne korisne aspekte LED dioda i modernih mikrokontrolera.

Prvo što se događa kada na LED priključite LED. Donji glavni dijagram prikazuje ono što se naziva If v Vf krivulja tipične LED diode male snage 5 mm. Ako označava 'naprednu struju', Vf znači 'napredni napon'. Vertikalna osa u drugim riječima prikazuje struju koja će teći kroz LED ako na njene stezaljke postavite napon vodoravne osi. Radi i obrnuto, ako izmjerite da je struja neke vrijednosti, možete pogledati prema horizontalnoj osi i vidjeti napon koji će LED prenijeti na svoje stezaljke. Drugi dijagram prikazuje shematski prikaz LED sa oznakama If i Vf. Na glavnom dijagramu sam takođe označio oblasti grafikona koje nas zanimaju. - Prvo područje je gdje je LED "isključen". Preciznije, LED emitira svjetlo tako prigušeno da ga nećete moći vidjeti ako niste imali neku vrstu super-duper pojačivača slike. - Druga oblast ima LED koji samo blago emituje prigušen sjaj. - Treće područje je mjesto gdje LED obično radi i emitira svjetlo prema ocjeni proizvođača. - Četvrto područje je mjesto gdje LED radi izvan svojih radnih granica, vjerovatno svijetli jako jako, ali nažalost samo kratko vrijeme prije nego što čarobni dim iz unutrašnjosti pobjegne i više neće raditi … tj. U ovom području izgara jer kroz njega protiče previše struje. Imajte na umu da je krivulja If/Vf ili radna krivulja LED diode 'nelinearna' krivulja. Odnosno, to nije ravna linija … ima krivinu ili pregib u sebi. Na kraju, ovaj dijagram je za tipičnu crvenu LED diodu od 5 mm dizajniranu za rad na 20 mA. Različite LED diode različitih proizvođača imaju različite radne krivulje. Na primjer, u ovom dijagramu pri 20mA prednji napon LED -a bit će približno 1,9V. Za plavu LED diodu od 5 mm na 20 mA, napon naprijed može biti 3,4 V. Za bijelu lukseonsku LED diodu velike snage na 350 mA, napon naprijed može biti oko 3,2 V. Neki paketi LED dioda mogu imati nekoliko LED serija u nizu ili paralelno, mijenjajući opet krivulju Vf/If. Obično proizvođač određuje radnu struju na kojoj se LED može koristiti, i prednji napon pri toj struji. Obično (ali ne uvijek) dobijete grafikon sličan donjem u tablici s podacima. Morate pogledati tehnički list za LED da biste utvrdili koliki je napon naprijed kod različitih radnih struja. Zašto je ovaj grafikon toliko važan? Budući da pokazuje da će napon preko LED diode struja koja će teći biti prema grafikonu. Smanjite napon i manje će struje teći …..i LED će biti 'isključen'. Ovo je dio teorije charlieplexinga, do koje ćemo doći u sljedećem koraku.

Korak 2: Zakoni (elektronike)

Zakoni (o elektronici)
Zakoni (o elektronici)
Zakoni (o elektronici)
Zakoni (o elektronici)
Zakoni (o elektronici)
Zakoni (o elektronici)

Još uvijek nismo u čaroliji charlieplexinga ….moramo ići na neke osnove zakona o elektronici. Prvi zakon interesa kaže da je ukupni napon na bilo kojoj seriji povezanih komponenti u električnom krugu jednak zbroju pojedinačnih napone kroz komponente. Ovo je prikazano na donjem glavnom dijagramu. Ovo je korisno kada koristite LED diode jer vaša prosječna izlazna baterija ili izlazni pin mikrokontrolera nikada neće biti baš pravi napon za pokretanje vaše LED diode pri preporučenoj struji. Na primjer, mikrokontroler će obično raditi na 5V, a njegovi izlazi će biti na 5V kada su uključeni. Ako samo povežete LED diodu na izlazni pin mikrofona, vidjet ćete iz radne krivulje na prethodnoj stranici da će u LED diodu teći previše struje i da će se zagrijati i izgorjeti (vjerovatno će oštetiti i mikro). Međutim, ako uvedemo drugu komponentu u nizu sa LED -om, možemo oduzeti dio od 5V tako da je lijevi napon upravo pravi za pokretanje LED -a pri odgovarajućoj radnoj struji. Ovo je obično otpornik, a kada se koristi na ovaj način naziva se otpornik za ograničavanje struje. Ova metoda se koristi vrlo često i dovodi do onoga što se naziva 'ohmov zakon' …. Tako nazvan po gospodinu Ohmu. Omov zakon slijedi jednadžbu V = I * R gdje je V napon koji će se pojaviti na otporu R kada struja I teče kroz otpornik. V je u voltima, ja u amperima, a R u ohmima. Dakle, ako moramo potrošiti 5V, a želimo 1,9 V preko LED-a da radi na 20mA, tada želimo da otpornik ima 5-1,9 = 3,1 V preko njega. To možemo vidjeti na drugom dijagramu. Budući da je otpornik u nizu sa LED diodom, kroz otpornik će teći ista struja kao i LED, tj. 20mA. Preuređujući jednadžbu možemo pronaći otpor koji nam je potreban da ovo uspije. V = I * RsoR = V / Zamjenom vrijednosti u našem primjeru dobivamo: R = 3,1 / 0,02 = 155 ohma (napomena 20 mA = 0,02 ampera) Još uvijek sam sa mnom do sada … super. Sada pogledajte dijagram 3. LED dioda se nalazi između dva otpornika. Prema prvom gore spomenutom zakonu, imamo istu situaciju na drugom dijagramu. Imamo LED napon od 1,9 V koji radi prema specifikacijama. Takođe imamo svaki otpornik koji oduzima 1,55 V svaki (ukupno 3,1). Zbrajanjem napona imamo 5V (pin mikrokontrolera) = 1.55V (R1) + 1.9V (LED) + 1.55V (R2) i sve se uravnotežuje. Koristeći zakon oma otkrivamo da otpornici moraju imati 77,5 ohma, što je polovica iznosa izračunatog iz drugog dijagrama. Naravno, u praksi bi vam bilo teško pronaći otpornik od 77,5 ohma, pa biste samo zamijenili najbližu dostupnu vrijednost, recimo 75 ohma, i na kraju dobili malo više struje u LED ili 82 ohma da budu sigurni i da imaju malo manje. Zašto bismo, pobogu, radili ovaj otpornik koji radi za pogon jednostavne LED … … pa ako imate jednu LED, sve je to pomalo glupo, ali ovo je uputstvo za charlieplexing i dobro dođe za sljedeći korak.

Korak 3: Predstavljanje „komplementarnog pogona“

Predstavljamo „komplementarni pogon“
Predstavljamo „komplementarni pogon“

Drugi naziv koji je točnije opisati 'charlieplexing' je 'komplementarni pogon'.

U vašem prosječnom mikrokontroleru možete u firmveru reći mikro da postavi izlazni pin na '0' ili '1' ili da predstavi 0V napon na izlazu ili 5V napon na izlazu. Donji dijagram sada prikazuje sendvič LED sa obrnutim partnerom … ili komplementarnom LED, dakle komplementarnim pogonom. U prvoj polovici dijagrama mikro izlazi 5V na pin A i 0V na pin B. Struja će tako teći od A do B. Budući da je LED2 orijentirana unatrag prema LED1, kroz nju neće teći struja i neće sjaj. To se zove obrnuta pristrasnost. Imamo ekvivalent situacije na prethodnoj stranici. U osnovi možemo zanemariti LED2. Strelice prikazuju trenutni protok. LED je u osnovi dioda (dakle dioda koja emitira svjetlost). Dioda je uređaj koji omogućuje protok struje u jednom smjeru, ali ne i u drugom. Shema LED -a prikazuje ovo, struja će teći u smjeru strelice ……, ali je blokirana na drugi način. Ako uputimo mikro da sada izlazi 5V na pin B i 0V na pin A, imamo suprotno. Sada je LED1 obrnuto pristran, LED2 je pristran prema naprijed i omogućit će protok struje. LED2 će svijetliti, a LED1 će biti taman. Možda bi bilo dobro pogledati sheme različitih projekata navedenih u uvodu. Trebali biste vidjeti puno ovih komplementarnih parova u matrici. Naravno, u donjem primjeru vozimo dvije LED diode s dva pina mikrokontrolera … mogli biste reći zašto se truditi. Sljedeći odjeljak je gdje dolazimo do utrobe čarlipleksiranja i kako efikasno koristi izlazne pinove mikrokontrolera.

Korak 4: Konačno …. Charlieplex matrica

Konačno … Charlieplex Matrix
Konačno … Charlieplex Matrix
Konačno … Charlieplex Matrix
Konačno … Charlieplex Matrix

Kao što je spomenuto u uvodu, charliplexing je zgodan način za pokretanje puno LED dioda sa samo nekoliko pinova na mikrokontroleru. Međutim, na prethodnim stranicama nismo zaista sačuvali nijedan pin, pogonivši dvije LED diode sa dva pina ….veliki huk!

Pa, možemo proširiti ideju komplementarne vožnje u matricu charlieplex. Donji dijagram prikazuje minimalnu matricu charlieplexa koja se sastoji od tri otpornika i šest LED dioda i koristi samo tri pina mikrokontrolera. Vidite li koliko je ova metoda zgodna? Ako želite voziti šest LED dioda na uobičajen način ….trebalo bi vam šest pinova za mikrokontroler. Zapravo sa N pinova mikrokontrolera potencijalno možete pokrenuti N * (N - 1) LED diode. Za 3 pina ovo je 3 * (3-1) = 3 * 2 = 6 LED dioda. Stvari se brzo slažu s više pribadača. Sa 6 pinova možete upravljati sa 6 * (6 - 1) = 6 * 5 = 30 LED dioda …. Wow! A sada malo o charlieplexingu. Pogledajte donji dijagram. Imamo tri komplementarna para, jedan par između svake kombinacije mikro izlaznih pinova. Jedan par između A-B, jedan par između B-C i jedan par između A-C. Ako ste za sada isključili pin C, imali bismo istu situaciju kao i prije. Sa 5V na pin A i 0V na pin B, LED1 će svijetliti, LED2 je obrnuto pristran i neće provoditi struju. Sa 5V na pin B i 0V na pin A LED2 će svijetliti, a LED1 je obrnuto pristran. Ovo slijedi za ostale mikro iglice. Ako isključimo pin B i pin A postavimo na 5V, a pin C na 0V tada bi LED5 zasvijetlila. Obrnuvši se tako da je pin A 0V, a pin C 5V, tada bi LED6 zasvijetlila. Isto za komplementarni par između pinova B-C. Čekaj, čujem kako govoriš. Pogledajmo drugi slučaj malo pobliže. Imamo 5V na pinu A i 0V na pinu C. Isključili smo pin B (srednji). U redu, dakle, struja teče kroz LED5, struja ne teče kroz LED6 jer je obrnuto pristrasna (pa tako i LED2 i LED4)….ali postoji i put za struju koja vodi od pina A, preko LED1 i LED3 zar ne? Zašto i ove LED diode ne svijetle. Ovdje je srce sheme charlieplexing. Zaista postoji struja koja teče i LED1 i LED3, međutim napon na obje ove kombinacije bit će samo jednak naponu na LED5. Obično bi imali pola napona na sebi koji LED5 ima. Dakle, ako imamo 1,9 V preko LED5, tada će samo 0,95 V biti preko LED1 i 0,95 V preko LED3. Iz krivulje If/Vf spomenute na početku ovog članka možemo vidjeti da je struja na ovoj polovici napona mnogo niža od 20 mA…..i te LED diode neće vidljivo svijetliti. To je poznato kao trenutna krađa. Tako će većina struje teći kroz LED diodu koju želimo, najdirektniji put kroz najmanji broj LED dioda (tj. Jednu LED), a ne kroz bilo koju kombinaciju LED dioda. Ako ste pogledali trenutni tok za bilo koju kombinaciju stavljanja 5V i 0V na bilo koja dva pogonska pina matrice charlieplex, vidjet ćete istu stvar. Samo jedna LED lampica će svijetliti odjednom. Kao vježbu, pogledajte prvu situaciju. 5V na pin A i 0V na pin B, odspojite pin C. LED1 je najkraći put za provođenje struje, a LED 1 će svijetliti. Mala struja će također proći kroz LED5, zatim napraviti sigurnosnu kopiju LED4 na pin B … … ali opet, ove dvije LED diode u seriji neće moći sifonisati dovoljno struje u odnosu na LED 1 da svijetli jako. Tako se ostvaruje moć charlieplexinga. Pogledajte drugi dijagram koji je shematski za moj Microdot sat…..30 LED dioda, sa samo 6 pinova. Moj sat Minidot 2 je u osnovi proširena verzija Microdota ….sa 30 LED dioda raspoređenih u niz. Da biste napravili uzorak u nizu, svaka LED dioda koja se pali nakratko se uključuje, a zatim mikro prelazi na sljedeću. Ako je planirano da svijetli, ponovo se uključuje na kratko. Brzim skeniranjem kroz LED diode dovoljno brzo princip koji se naziva 'postojanost vida' omogućit će nizu LED dioda pokazati statički uzorak. Članak Minidot 2 ima malo objašnjenja o ovom principu. Ali čekaj ….. Naizgled sam malo prešutio gornji opis. Šta je ovo "isključite pin B", "isključite pin C". Sledeći odeljak molim.

Korak 5: Tri stanja (ne tricikli)

Tri stanja (ne tricikli)
Tri stanja (ne tricikli)
Tri stanja (ne tricikli)
Tri stanja (ne tricikli)

U prethodnom koraku smo spomenuli da se mikrokontroler može programirati za izlaz 5V ili 0V napona. Kako bi matrica charlieplex funkcionirala, odabiremo dva pina u matrici i odspojimo sve druge pinove.

Naravno da je ručno odvajanje pinova malo teško izvesti, pogotovo ako skeniramo stvari vrlo brzo kako bismo upotrijebili postojanost efekta vida za prikaz uzorka. Međutim, izlazni pinovi mikrokontrolera mogu se programirati i kao ulazni pinovi. Kada je mikro pin programiran da bude ulaz, on prelazi u ono što se naziva 'visoka impedancija' ili 'tri stanja'. Odnosno, on predstavlja veoma visok otpor (reda megagaoma ili miliona oma) na pin. Ako postoji vrlo veliki otpor (vidi dijagram), tada možemo u osnovi smatrati da je pin isključen, pa shema charliplex funkcionira. Drugi dijagram prikazuje matrične pinove za svaku kombinaciju koja može osvijetliti svaku od 6 LED dioda u našem primjeru. Obično je tro stanje označeno s 'X', 5V je prikazano kao '1' (za logički 1), a 0V kao '0'. U mikro firmveru za '0' ili '1' programirali biste pinove kao izlaz, a njihovo stanje je dobro definirano. Za tri stanja programirate ga kao ulaz, a budući da je ulaz, zapravo ne znamo kakvo stanje može biti …. Otuda 'X' za nepoznato. Iako bismo mogli dodijeliti pin kao tro-stanje ili ulaz, ne moramo ga čitati. Iskoristili smo činjenicu da je ulazni pin na mikrokontroleru velike impedancije.

Korak 6: Neke praktične stvari

Magija charlieplexing -a oslanja se na činjenicu da će pojedinačni napon prikazan na više LED -a u nizu uvijek biti manji od onog na jednoj LED -i kada je jedna LED paralelna sa serijskom kombinacijom. Ako je napon manji, tada je i struja manja, a nadamo se da će struja u serijskoj kombinaciji biti toliko niska da LED neće svijetliti. Međutim, to nije uvijek slučaj. Recimo da ste imali dvije crvene LED diode s tipičnom prednji napon od 1,9 V u vašoj matrici i plava LED dioda sa naponom od 3,5 V (recimo LED1 = crvena, LED3 = crvena, LED5 = plava u našem primjeru sa 6 LED). Ako biste upalili plavu LED diodu, dobili biste 3,5/2 = 1,75 V za svaku od crvenih LED dioda. Ovo može biti vrlo blizu zatamnjenog radnog područja LED diode. Možda ćete otkriti da će crvene LED diode slabo svijetliti kada svijetli plava boja. Stoga je dobra ideja provjeriti je li napon naprijed svih LED -ova različitih boja u vašoj matrici približno isti pri radnoj struji ili koristite iste boje LED diode u matrici. U mojim Microdot/Minidot projektima nisam morao brinuti o tome, koristio sam plavo/zelene SMD LED diode visoke efikasnosti koje na sreću imaju isti napon naprijed kao i crvene/žute. Međutim, ako bih implementirao istu stvar sa 5 mm LED diodama, rezultat bi bio problematičniji. U ovom slučaju bih zasebno implementirao plavo/zelenu matricu charlieplex i crveno/žuti matix. Trebalo bi da koristim više pinova …. Ali eto. Drugi problem je pogledati koliko trenutno izvlačite mikro i koliko žarko želite LED. Ako imate veliku matricu i brzo je skenirate, svaka LED dioda svijetli samo nakratko. Ovo će izgledati relativno prigušeno u poređenju sa statičkim ekranom. Možete varati povećavajući struju kroz LED smanjujući otpornike za ograničavanje struje, ali samo do određene točke. Ako predugo izvlačite previše struje iz mikro, oštetit ćete izlazne pinove. Ako imate matricu koja se sporo kreće, recimo statusni ili ciklonski prikaz, mogli biste smanjiti struju na siguran nivo, ali i dalje imati svijetli LED ekran jer je svaka LED uključena duže vrijeme, moguće statična (u slučaju indikator statusa). Neke prednosti charlieplexinga:- koristi samo nekoliko pinova na mikrokontroleru za kontrolu mnogih LED dioda- smanjuje broj komponenti jer vam ne treba puno upravljačkih čipova/otpornika itd. Neki nedostaci:- vaš mikro firmver će morati podnijeti postavke i naponsko stanje i ulazno/izlazno stanje pinova- morate biti oprezni pri miješanju različitih boja- raspored PCB-a je težak, jer je LED matrica složenija.

Korak 7: Reference

Na webu postoji mnogo referenci o charlieplexingu. Osim veza na prednjoj strani članka, neke od njih su: Originalni članak iz Maxim -a, ovo ima puno toga za reći o vožnji 7 segmentnih ekrana, što je također moguće. https://www.maxim-ic.com/appnotes.cfm/appnote_number/1880A wiki unoshttps://en.wikipedia.org/wiki/Charlieplexing

Preporučuje se: