Shield-A, učni pripomoček za programiranje mikrokontrolerjev (9)
V tem in naslednjih nekaj nadaljevanjih bomo obravnavali LED-ice D8-D11 (slika 36). Čeprav so fizično štiri LED-ice, so znotraj vsake od njih trije LED čipi, ki oddajajo svetlobo rdeče (R), zelene (G) in modre (B) barve, zato take diode običajno imenujemo RGB diode. Ti čipi so pravzaprav tri svetlobne diode, nameščene znotraj skupnega ohišja, ki ima običajno štiri priključke različnih dolžin.
Katode ali anode vseh čipov so priključene na najdaljši priključek; prvi tip se imenuje RGB dioda s skupno katodo, drugi pa RGB dioda s skupno anodo. Razvojni sistem Shield-A je opremljen z RGB diodami s skupno katodo in razporeditvijo prostih vodnikov (anod) čipov R, G in B, kot je prikazano na sliki 37 spodaj levo. Razporeditev prostih priključkov čipov ni standardizirana, zato so na trgu tudi RGB diode z drugačno “barvno postavitvijo” – če komponente za svoj Shield-A nabavljate sami, bodite pozorni na te podrobnosti.
Ta vsebina je samo za naročnike
Ker so na Shield-A nameščene 4 diode RGB, je za neodvisno krmiljenje čipov potrebno 12 krmilnih signalov in 12 uporov. Ta povezava je prikazana na sliki 37 zgoraj in je ni treba podrobneje razlagati: katode vseh čipov so povezane na skupni minus, zato bo posamezen čip zasvetil, ko bo na njegov + priključek priključena dovolj visoka pozitivna napetost .
Težava pri tej povezavi je preveč nadzornih napetosti ali preveč izhodnih priključkov mikrokontrolerja, ki jih moramo uporabiti, da iz štirih RGB diod izluščimo vse barvne kombinacije, ki nam jih lahko omogočijo. Zato smo na sliki 37 spodaj prikazali še en način združevanja, ki je bil nazadnje uporabljen za razvojni sistem Shield-A. Tu so skupne katode RGB diod ločene in vsaka dioda ima svoj “minus”, na sliki z oznako “-1”, “-2”, “-3” in “-4”. Anode vseh rdečih čipov so povezane skupaj in imajo skupen upor za omejevanje toka in skupni krmilni konektor “+”; enako velja za zelene in modre čipe. Na ta način smo zmanjšali število krmilnih signalov na 7, skice na sliki 38 pa nam bodo pomagale analizirati, kako deluje to vezje.
Slika 38a prikazuje najpreprostejši primer, ko želimo aktivirati samo en čip ene RGB diode: v tem primeru je to rdeči čip druge diode, ki smo jo označili kot R2. Da bi to dosegli, moramo priključek “-2” priključiti na minus in rdeči plus na plus polovico napajalne napetosti. Če uporabimo napetostni vir 5 V in upore z uporom 1 kΩ, bo skozi R2 tekel tok približno 3 mA – to zadostuje, da se druga RGB dioda jasno zasveti z rdečo svetlobo. Vse ostale povezave puščamo “v zraku”, torej jih ne povezujemo z ničemer.
Slika 38b prikazuje primer, v katerem želimo aktivirati dva čipa iste RGB diode: v tem primeru sta to rdeči in zeleni čipi druge diode, označena z R2 in G2. Da bi to dosegli, je treba priključek „-2“ priključiti na minus, rdeči in zeleni plus pa na plus pol napajalne napetosti; in tu pustimo vse druge povezave v zraku. Skozi rdeče in zelene čipe druge RGB diode bodo tekli tokovi približno 3 mA, ki bodo svetili rumenkasto ali oranžno (rdeča in zelena se bosta “pomešali”). Na enak način bi lahko vključili tudi druge kombinacije čipov: rdeča in modra tvorita vijolično, zelena in modra tvorita modro-zeleno barvo, in če vklopimo vse tri čipe iste diode, dobimo belo svetlobo.
Slika 38c prikazuje primer, v katerem želimo aktivirati po en čip v vsaki od obeh RGB diod: v tem primeru so to rdeči čipi druge in tretje diode z oznakama R2 in R3. Da bi to dosegli, je treba sponki “-2” in “-3” priključiti na minus, rdeči plus pa na plus pol napajalne napetosti; in tu pustimo vse druge povezave v zraku. Ker so rdeči čipi povezani vzporedno, bo skozi vsakega od njih tekel tok približno 1,5 mA: druga in tretja RGB dioda bosta svetili z rdečo svetlobo, katere jakost bo nekoliko manjša kot v primeru a), ko je svetila samo ena RGB dioda. To zmanjšanje intenzitete ni zelo izrazito, lahko celo ostane neopaženo. Če želimo, da vse štiri RGB diode svetijo rdeče, bomo na minus pol napajalne napetosti priključili tudi sponki “-1” in “-4”; zdaj bo padec intenzitete bolj opazen.
Na sliki 38d je prikazan primer, v katerem želimo aktivirati en čip v dveh RGB diodah: v tem primeru sta to rdeči čip druge in zeleni čip tretje diode z oznakama R2 in G3. Da bi to dosegli, je treba priključke “-2” in “-3” priključiti na minus, rdeči in zeleni plus pa na plus pol napajalne napetosti; in tu pustimo vse druge povezave v zraku. Zdaj bo prišlo do težave: ta kombinacija bo prenašala tok ne le skozi želene čipe R2 in G3, temveč tudi skozi čipe G2 in R3. Namesto da druga RGB LED sveti rdeče in tretja zelena, bosta obe svetili rumeno ali oranžno.
Sklepamo, da ima povezava na sliki 37 spodaj manjše število vrat, vendar deluje dobro le, če v samo eno RGB diodo vključimo različne kombinacije čipov (sliki 38a in 38b). Vezje bo delovalo dobro, če želimo v dve ali več RGB diod vključiti isto barvno kombinacijo, čeprav bo jakost svetlobe posamezne LED odvisna od števila vklopljenih diod (38c). Če pa bomo poskušali doseči različne barvne kombinacije na različnih RGB diodah, nam ne bo uspelo … vsaj ne tako, kot smo poskušali na sliki 38d. Spremeniti bomo morali svoj pristop!
Če želimo izkoristiti način povezovanja RGB diod po shemi na sliki 37 spodaj, kar je zmanjšano število vrat, bomo morali uporabiti postopek, imenovan multipleksiranje. V tem postopku vklopimo po eno RGB diodo naenkrat, to pomeni, da je na minus pol napajanja naenkrat priključen samo en “-” minus priključek napajanja:
- medtem ko so vsi “-” priključki v zraku, na plus pol napajalne napetosti povežemo kombinacijo “+” priključkov, odvisno od barve svetlobe, ki jo želimo dobiti na prvi RGB diodi; v primeru 38c to ne bi bil niti eden”+”;
- priključek “-1” kratkotrajno priključimo na minus pol napajanja in ga takoj odklopimo;
- na plus pol napajalne napetosti priključimo kombinacijo “+” priključkov, odvisno od barve svetlobe, ki jo želimo dobiti na drugi RGB diodi; v primeru 38c bi bil to “rdeč” plus;
- priključek “-2” kratkotrajno priključimo na minus napajalni pol in ga takoj zatem odklopimo;
- na plus pol napajalne napetosti priključimo kombinacijo “+” priključkov, odvisno od barve svetlobe, ki jo želimo dobiti na tretji RGB diodi; v primeru 38c bi bil to “zeleni” plus;
- priključek “-3” kratkotrajno priključimo na negativni pol napajanja in ga takoj zatem odklopimo;
- na plus pol napajalne napetosti priključimo kombinacijo “+” priključkov, odvisno od barve svetlobe, ki jo želimo dobiti na četrti RGB diodi; v primeru 38c to ne bi bil en sam “+”;
- priključek “-4” kratkotrajno priključimo na minus pol napajanja in ga takoj odklopimo;
- isti postopek ponavljamo, dokler želimo, da diode RGB zasvetijo z neko barvno kombinacijo.
“Kratkotrajno” pomeni nekaj milisekund. Da bi lahko “slepili oko” in dobili iluzijo, da so vse diode prižgane hkrati in brez utripanja, moramo vsako od njih vklopiti vsaj 50-krat na sekundo. Opazujemo vezje s 4 RGB diodami in s preprostim izračunom pridemo do zaključka, da bi morale biti diode vklopljene za 5 ms ali manj.
V postopku multipleksiranja se RGB diode vklopijo ena za drugo, tako da imamo dejansko ves čas situacije iz slik 38a ali 38b, za katere smo ugotovili, da brezhibno reproducirajo izbrano barvo. Zdaj pa bo vsaka dioda svetila le četrtino časa, zato bo svetila z nižjo intenzivnostjo, kot če bi bila ves čas vklopljena. To lahko kompenziramo z zmanjšanjem vrednosti upora za omejitev toka; če bi analizo vezja začeli z upori 1 kΩ, bi bilo za multipleksiranje primerno uporabiti upore med 270 Ω in 470 Ω.
Pike na koncu vodoravnih črt na slikah 37 in 38 kažejo, da bi lahko po istem principu dodali več RGB diod. In res, postopek multipleksiranja deluje popolnoma z veliko večjim številom diod od tiste, ki jo analiziramo, toda potem je treba čas vklopa vsake diode ustrezno skrajšati.
Postopek multipleksiranja je tudi “tiho” rešil problem spremembe intenzitete: ne glede na to, koliko diod je prižganih hkrati (natančneje na videz hkrati), ena, dve ali vse štiri, bodo vedno svetile z enako intenziteto. To pa še ni vse 🙂 ! S spretnim programiranjem lahko iz RGB diode “izluščimo” veliko, veliko več kot sedem barv, ki smo jih omenili v tem članku. Čaka nas veliko dela: v naslednjih nadaljevanjih bomo najprej napisali programe, ki bodo ponazorili tisto, o čemer smo pisali, zato pa vabljeni na branje naslednjih nadaljevanj…
Avtorja: Vladimir Mitrović in Robert Sedak
email: vmitrovic12@gmail.com
2021/296