Matrični LED displej (eng. LED dot matrix display) je sestavljen iz niza svetlečih diod, vezanih v matrico z določenim številom vrstic in stolpcev.
Avtor: mag. Vladimir Mitrović
Takšen displej je najpogosteje sestavljen iz manjših modulov, kot teh prikazanih na sliki 1. Za prikaz na vseh modulih s slike 1 je zadolženo namensko integrirano vezje MAX7219; na njega lahko povežemo do osem 7-segmentnih displejev s skupno katodo ali pač matrico 64 neodvisnih LED-ic. Shema na sliki 2 kaže dva tipična načina vezave, od katerih nam bo zanimiv spodnji, za LED-ice razporejene v matrico tipa 8×8.
Ta vsebina je samo za naročnike
Osnovno o integriranem vezju MAX7219
MAX7219 združuje vsa potrebna vezja za multipleksirani prikaz ter analogno in digitalno kontrolo jakosti toka preko posameznih segmentov. Komunikacija z mikrokontrolerjem se odvija preko tri-bitnega vodila z linijami DIN, CLK in CS. Mikrokontroler sinhrono s takt-impulzi (CLK) po DIN liniji pošilja 16-bitno sporočilo, ki ga bo MAX7219 prebral v trenutku, ko mikrokontroler kratkotrajno postavi CS linijo v stanje “1”. Sporočilo vsebuje naslov registra in vsebino, ki jo je potrebno v njega vpisati. Npr., z vpisom 8-bitne binarne kombinacije v registre na naslovih 1-8 (registri Digit0-Digit7) se bo vklopila kombinacija LED-ic v stolpcih DIG0-DIG7, pri čemer binarno “1” vklopi, seveda pa “0” izklopi ustrezno LED-ico. Z vpisom ustrezne binarne kombinacije v preostalih 5 registrov določamo način dela MAX7219 čipa (število aktivnih stolpcev, digitalno kontrolo osvetlitve, vključitev BCD dekodiranja, normalnega ali testnega načina dela in podobno).
Največja svetilnost displejev, oziroma najvišji tok preko LED-ice, nastavljamo s pomočjo upora Rset (slika 2). Na komercialnih modulih je vrednost tega upora običajno 10 kΩ. To je tudi najmanjša dovoljena vrednost, pri kateri displej sveti precej močno. Intenzivnost lahko zmanjšamo programsko s pomočjo digitalne kontrole. Vendar če želite bolj fino regulacijo v področju nižjih intenzivnosti priporočam, da povečate vrednost Rset upora npr. na 39 kΩ. Seveda če se odločite za takšno modifikacijo, potem programsko več ne bo možno doseči maksimalne intenzitete, ki nam jo omogoča upor 10 kΩ.
MAX7219 ima izhodni priključek DOUT, preko katerega posreduje sporočilo na DIN priključek naslednjega čipa v nizu. Tako lahko na enostaven način povežemo večje število MAX7219 čipov: z vsakim CLK impulzom se sporočilo premika po en bit od prvega do “najbolj oddaljenega” čipa. Z namenom serijske povezave ima vsak od komercialnih modulov s slike 1 komplet 5 vhodnih in 5 izhodnih priključkov, nameščenih na nasprotnih delih modula. Kako jih bomo najbolj elegantno povezali je odvisno od izvedbe posameznega modula.
Generični in FC-16 modul
Poglejmo najprej “generični” modul, ki je prikazan na sliki 1 zgoraj levo. Na njemu se nahaja MAX7219 čip v “klasičnem” DIL ohišju, tiskana ploščica je večja od samega displeja. Takšne module lahko zložimo samo enega poleg drugega, glede na ilustracijo na sliki 3. Če potrebujemo dve vrsti, morajo biti vhodni priključki v zgornji vrsti obrnjeni “proti navzgor”, v spodnjem pa “proti dol”. S tem je število vrstic omejeno na dva, število modulov v vrstici pa je lahko večje od prikazanih 16.
Modul s komercialno oznako FC-16 (slika 1, spodaj levo) ima MAX7219 čip v SMD izvedbi, ki je nameščen popolnoma pod samimi displeji. Ker so dimenzije tiskane ploščice enake dimenzijam displejev, je module možno zlagati na isti način, kot smo zlagali generične module tako, da vsi vhodni priključki gledajo proti zgoraj ali proti spodaj, ali pač tako da bodo izhodni priključki enega modula obrnjeni proti vhodnim priključkom naslednjega modula v nizu. Takšen način je najbolj praktičen za medsebojno povezovanje in je po tem principu zložen tudi niz štirih FC-16 modulov, prikazan na sliki 1 spodaj.
Kako povezati večje število FC-16 modulov, bodisi posameznih ali četvernih, je prikazano na shemi na sliki 4. Tukaj nimamo delov tiskane ploščice, ki bi gledali s katere od strani displejev, zato je module mogoče zložiti tudi v več kot dve vrsti. Število modulov v vrsti tukaj ni omejeno na prikazanih 16.
Električne sheme vezave so prikazane na slikah 3 in 4 spodaj in si identične za oba tipa modula. Čeprav to mogoče ne padev oči takoj, sta CLK in CS priključka vseh modulov paralelno povezana na istoimenske linije vodila preko priključkov na samem tiskanem vezju, vendar takšna povezava ne obstaja med DIN in DOUT priključkoma: moduli v vsaki vrsti so povezani v niz z vezavo DIN vhoda naslednjega modula v vrsti na DOUT izhod predhodnega modula. Če je ena vrsta sestavljena iz16 modulov, kot na primera na slikah 3 in 4, bo mikrokontroler preko DIN vhoda zadnjega modula v nizu (modula 16 in modula 32) poslal 256-bitno informacijo, ki se bo v skupinah dolžine 16 bita, “rasporedila” po MAX7219 čipih od prvega do zadnjega modula v nizu.
Ker se ista informacija sočasno pošilja tudi gornji in spodnji vrstici, smo morali razkleniti njuni CS liniji. Poslano informacijo bo sprejela tista vrsta, ki je na vrsti red na kateri CS liniji bo mikrokontroler generiral pozitivni impulz. To bi bilo možno izvesti tudi drugače, vendar je takšen način vezave usklajen s konceptom Bascom-AVR knjižnice, ki jo bomo v nadaljevanju predstavili. Čeprav je na prikazani način možno dodati več modulov v posamezno vrsto, je v primeru FC-16 modula možno dodati še več vrst, sheme na slikah 3 in 4 prikazujejo maksimalno konfiguracijo, ki jo knjižnica podpira: največ dve vrsti z največ 16 moduli v vsaki vrsti. Numeriranje vrst (ROW0 i ROW1), vrst pikslov (PIX0-PIX15) in stolpcev (COL0-COL127) je tudi usklajeno z numeracijo, ki jo uporabljamo v knjižnici in programskih primerih.
Če nam je potreben manjši displej bomo zmanjšali število modulov v vrsti (ali enakomerno v obeh vrstah!) ali odstranili spodnjo vrsto. Pri tem oštevilčenje vrst, vrst pikslov in stolpcev ostane 0; najmanjši displej, ki ga knjižnica podpira, vsebuje samo en modul, nameščen v “zgornjo vrsto” (ROW0), z vrstami pikslov PIX0-PIX7 in stolpcev COL0-COL7.
Če je matrični displej sestavljen iz ene vrste modulov, bodo za povezovanje z mikrokontrolerjem potrebni 3 priključki. Če so moduli v matričnem displeju razporejeni v dve vrsti, bomo potrebovali dodatni četrti priključek. Priključki se lahko svobodno izberejo, tisti označeni na shemah s slik 3 in 4 ustrezajo programskim primerom, ki jih bomo analizirali.
In sedaj problemi…
Če primerjamo po en generični modul iz zgornje in spodnje vrste (slika 3), bomo opazili, da sta ta dva modula medsebojno obrnjena za 180°. To pomeni, da je “zgornja” vrsta pikslov iz zgornjega modula postala “spodnja” vrsta pikslov na modulu iz spodnje vrste, in prav tako sta zamenjana pomena “levi” in “desni” stolpec. Da bi se tako obrnjeni moduli iz spodnje vrste vklopili v naslovno mapo prikazano na sliki 3, mora program izvršiti ustrezno spremembo postopka naslavljanja in vrstnega vrste bitov v podatkih preden jih pošlje modulom v spodnji vrsti.
FC-16 moduli s slike 4 so vsi obrnjeni v isti smeri in pri njih ne obstaja razlika v načinu naslavljanja in vrstnega vrste bitov ki se pošiljajo modulom v spodnji vrsti. Če pa se moduli povežejo, kot na sliki 4 – samo tako jih lahko zložimo in uporabljamo, če uporabimo četverni FC-16 modul, so vsi moduli obrnjeni za 90°, zato vrstice pikslov na displeju ustrezajo stolpcem modulov in obratno. Zato je vse podatke pred pošiljanjem v gornjo ali spodnjo vrstico na displeju potrebno transponirati, oziroma, vrstice pretvoriti v stolpce, stolpce pa v vrstice.
Sicer ima zelo praktičen četverni FC-16 modul še en problem, ki ga ne moremo rešiti programsko: ko se na tiskanovezje postavištiri displeje, bo med njimi razmik približno 1 mm, zato bo razmik med dvema stolpcema, ki pripadata sosednjim displejem malo večji od razmika stolpcev ki pripadajo istemu displeju. Na žalost se to se vidi in kvari splošni vtis. Problem lahko rešimo tako, da namesto četvernegavzamemo štiri enojne FC-16 module: te lahko zložimo tako da se displeji tesno prilegajo eden do drugega, brez nepotrebnega dodatnega razmika med stolpci. Električno povezovanje individualnih modulov ni problematično, ker so vhodni priključki naslednjega modula zraven izhodnih priključkov predhodnega, bi pa mehansko povezovanje večjega števila modulov v kompaktno celotolahko predstavljalo izziv.
Na sliki 1 vidimo še dve izvedbi modula z MAX7219 čipom: modul ICstation in rdeč modul nepoznane oznake in porekla. Oba ta modula se enostavno povežeta s kratkostičniki v horizontalni in vertikalni smeri; vendar glede na informacije, ki sem jih uspel zbrati, se način vezave LED matrice z MAX7219 čipom na teh modulih razlikuje od prikazanega na sliki 2. Čeprav se vsaka razlika lahko programsko popravi, to ni možno kvalitetno napraviti brez preverjanja na dejanskem modulu; zato sem uporabo knjižnice omejil samo na module s slik 3 in 4, ki se najbolj pogosto uporabljajo.
Knjižnica MAX7219$SE.sub
Knjižnica MAX7219$SE.sub je napisana za mreže z enim do maksimalno 32 modulov z MAX7219 čipom. Največje dovoljeno število modulov v eni vrsti je 16, največje dovoljeno število vrst je 2. Podprti so generični in FC-16 moduli v vezavah glede na shemi na slikah 3 in 4.
Knjižnica podpira tekstni in grafični način dela. V tekstnem načinu dela lahko izpišemo sporočila dolžine do 40 znakov v zgornji ali spodnji vrsti displejev, z levim ali desnim poravnanjem ali pač zzačetkom od katerega koli stolpca. Sporočilo, ki ga želimo prikazati na displeju vpisujemo v string spremenljivko Max7219$text in nato izberemo font, način izpisa in naslov od katerega jo želimo izpisati. Na voljo so nam fiksni font (vsi znaki so definirani v matrici 8×5) in proporcionalni font (odvisno od širine, so znaki definirani v matricah 8×1 do 8×5). Po vsakem znakuse bo izpisal razmik širine enega stolpca. Če je sporočilo daljše od širine displejev, bo višek sporočila odrezan; takšna sporočila lahko izpišemo v celoti v potujoči obliki (scroll).
V grafičnem načinu dela lahko naslavljamo vsak posamezni piksel in ga vklopimo ali izklopimo neodvisno od prikaza na ostanku displeja. Prav tako je možno naslavljati skupino 8 pikslov (stolpec v zgornji ali spodnji vrsti).
Knjižnica dimenzionira globalno spremenljivko Max7219$text
Dim Max7219$text As String *40
v katero shranimo sporočilo pred prikazom na displeju in še približno trideset lokalnih spremenljivk, ki vsebujejo polja s podatki (imenovali jih bomo buffer), njihove indekse, števce in mejne vrednosti. Imena teh lokalnih spremenljivk se pričnejo s prefiksom Max7219$$, uporabljajo jih podprogrami iz knjižnice in ni jih priporočljivo uporabljati direktno iz glavnega programa.
Sledi opis ukazov iz knjižnice
Ukaz Max7219$send_command
Max7219$send_command par1, par2
Parametri: | par1 | konstanta ali ime byte spremenljivke katere vsebino predstavlja naslov kontrolnega registra MAX7219 čipa (0-15) |
par2 | konstanta ali ime byte spremenljivke katere vsebino (0-255) se vpisuje v naslovni register MAX7219 čipa; odvisno od naslovljenega registra bodo to parametri ukaza ali kombinacija LED-ic, ki jih je treba vklopiti v naslovni vrstici/stolpcu | |
Namen: | Pošilja 16-bitniukaz MAX7219 čipu. | |
Opombe: | Dovoljene vrednosti parametra par1 so &B0000-&B1111, MAX7219 ignorira bite par1.7-par1.4.
Dovoljene vrednosti parametra par2 so odvisne od naslovnega registra, MAX7219 čip ignorira vrednosti “odvečnih” bitov. |
Ukaz Max7219$set_intensity
Max7219$set_intensity par1
Parametri: | par1 | konstanta ali ime byte spremenljivke katere vsebino se vpisuje v Intensity register MAX7219 čipa (0-15) |
Namen: | Digitalna kontrola intenzitete: 0 postavlja najmanjšo, 15 pa največjo intenziteto svetilnosti, ki jo svetijo LED-ice LED matrice. | |
Opomba: | Dovoljene vrednosti parametra par1 so &B0000-&B1111, ukaz ignorira bite par1.7-par1.4. |
Ukaz Max7219$set_invert_mode
Max7219$set_invert_mode par1
Parametri: | par1 | konstanta ali ime byte spremenljivke katere vsebino določa način dela (0-1) |
Namen: | Digitalna kontrola načina dela: 0 postavlja normalni način dela, v katerem “1” vklopi, “0” izklopi naslovljeno LED-ico; 1 postavlja invertirani način dela, v katerem “0” vklopi, “1” izklopi naslovljeno LED-ico. | |
Opomba: | Dovoljene vrednosti parametra par1 so &B0-&B1, ukaz ignorira bite par1.7-par1.1. |
Ukaz Max7219$cls
Max7219$cls
Parametri: | nima |
Namen: | Briše prikaz na displeju in postavlja kurzor na začetek zgornje vrste (naslov 0, 0). |
Opomba: | Ukaz je ekvivalenten Bascom-AVR ukazu Cls. |
Ukaz Max7219$clear_display
Max7219$clear_display
Parametri: | nima |
Namen: | Briše prikaz na displeju. |
Ukaz Max7219$clear_buffers
Max7219$clear_buffers
Parametri: | nima |
Namen: | Briše vsebino vseh bufferjev. |
Ukaz Max7219$clear_disp_buffer
Max7219$clear_disp_buffer
Parametri: | nima |
Namen: | Briše vsebino bufferja displeja. |
Opomba: | Buffer se bo avtomatsko zbrisal ob formiranju novega tekstnega ali grafičnega sporočila. |
Ukaz Max7219$clear_text_buffer
Max7219$clear_text_buffer
Parametri: | nima |
Namen: | Briše vsebino tekst bufferja. |
Opomba: | Buffer se bo avtomatsko zbrisal ob formiranju novega tekstnega sporočila. |
Ukaz Max7219$clear_graph_buffer
Max7219$clear_graph_buffer
Parametri: | nima |
Namen: | Briše vsebino celotnega grafičnega bufferja. |
Opombe: | Buffer je potrebno zbrisati pred oblikovanjem novega grafičnega sporočila.
Če ima displej ima samo eno vrsto, je ukaz identičen ukazuMax7219$clear_graph_buffer_u. |
Ukazu Max7219$clear_graph_buffer_u.
Max7219$clear_graph_buffer_u
Parametri: | nima |
Namen: | Briše vsebino grafičnega bufferja pridruženega gornji vrsti displejev. |
Opomba: | Buffer je potrebno zbrisati pred oblikovanjem novega grafičnega sporočila za gornjo vrsto displejev. |
Ukaz Max7219$clear_graph_buffer_l
Max7219$clear_graph_buffer_l
Parametri: | nima |
Namen: | Briše vsebino grafičnega bufferja pridruženega spodnji vrsti displejev. |
Opombe: | Buffer je potrebno zbrisati pred oblikovanjem novega grafičnega sporočila za spodnjo vrsto displejev.
Če ima displej samo eno vrsto, bo zgornja vrsta tudi spodnja in bo ukaz biti enak ukazu Max7219$clear_graph_buffer_u. |
Ukaz Max7219$locate
Max7219$locate par1, par2
Parametri: | par1 | konstanta ali ime byte spremenljivke katere vsebino predstavlja naslov vrste (row) |
par2 | konstanta ali ime byte spremenljivke katere vsebino predstavlja naslov stolpca (col) | |
Namen: | Postavlja kurzor na naslov row, col. | |
Opombe: | Za razliko od Bascom-AVR ukaza Locate, ima zgornji levi položaj kurzorja naslov 0, 0.
Dovoljene vrednosti parametrov par1 in par2 so odvisne od števila modulov in njihovem razporedu v eno ali dve vrsti. Če je eden od parametrov par1 in par2 izven mejnih vrednosti, se bo postavil Err bit, ukaz pa se ne bo izvršil. |
Ukaz Max7219$home_u
Max7219$home_u
Parametri: | nima |
Namen: | Postavlja kurzor na začetek zgornje vrste (naslov 0, 0). |
Ukaz Max7219$home_l
Max7219$home_l
Parametri: | nima |
Namen: | Postavlja kurzor na začetek spodnje vrste (naslov 1, 0). |
Opomba: | Če ima displej samo eno vrsto, je zgornja vrsta tudi spodnja in bo postavljena na naslov 0, 0. |
Ukazi Max7219$disp_f_text in Max7219$disp_p_text
Max7219$disp_f_text
Max7219$disp_p_text
Parametri: | nima |
Namen: | Izpisuje tekst iz spremenljivke Max7219$text z začetkom od trenutne pozicije kurzorja. |
Opombe: | Ukaz Max7219$disp_f_text uporablja fiksni font: širina vseh znakov je 5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik.
Ukaz Max7219$disp_p_text uporablja proporcionalni font: širina znakov je 1-5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik. Ukazi ne brišejo predhodne vsebine displejev. Če je sporočilo daljše od razpoložljivega prostora na displeju, bo konec sporočila odrezan. Trenutna pozicija kurzorja je določena z ukazi Max7219$locate, Max7219$home_u, Max7219$home_l oziroma koncem predhodnega izpisa. |
.
Ukazi Max7219$disp_f_text_l i Max7219$disp_p_text_l
Max7219$disp_f_text_l
Max7219$disp_p_text_l
Parametri: | nima |
Namen: | Izpisuje tekst iz spremenljivke Max7219$text od začetka izbrane vrste. |
Opombe: | Ukaz Max7219$disp_f_text_l uporablja fiksni font: širina vseh znakov je 5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik.
Ukaz Max7219$disp_p_text_l uporablja proporcionalni font: širina znakov je 1-5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik. Ukazi brišejo predhodni prikaz na displeju. Če je sporočilo daljše od razpoložljivega prostora na displeju, bo konec sporočila odrezan. Vrsta v kateri se izpisuje sporočilo je določena z zadnjim Max7219$locate, Max7219$home_u ali Max7219$home_l ukazom. |
Ukazi Max7219$disp_f_text_r i Max7219$disp_p_text_r
Max7219$disp_f_text_r
Max7219$disp_p_text_r
Parametri: | nima |
Namen: | Izpisuje tekst iz spremenljivke Max7219$text od konca izbrane vrste (desno poravnanje). |
Opombe: | Ukaz Max7219$disp_f_text_r uporablja fiksni font: širina vseh znakov je 5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik.
Ukaz Max7219$disp_p_text_r uporablja proporcionalni font: širina znakov je 1-5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik. Ukazi brišejo predhodni prikaz na displeju. Če je sporočilo daljše od razpoložljivega prostora na displeju, bo začetek sporočila odrezan. Vrsta v kateri se izpisuje sporočilo je določena z zadnjim Max7219$locate, Max7219$home_u ali Max7219$home_l ukazom. |
Ukazi Max7219$scroll_f_text_l i Max7219$scroll_p_text_l
Max7219$scroll_f_text_l par1
Max7219$scroll_p_text_l par1
Parametri: | par1 | konstanta ali ime word spremenljivke katere vsebina določa pavzo med dvema premikoma (0-65535 ms) |
Namen: | Izpisuje tekst iz spremenljivke Max7219$text tako da se sporočilo premika v levo, stolpec po stolpec, od konca proti začetku izbrane vrste. | |
Opombe: | Ukaz Max7219$scroll_f_text_l uporablja fiksni font: širina vseh znakov je 5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik.
Ukaz Max7219$scroll_p_text_l uporablja proporcionalni font: širina znakov je 1-5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik. Ukazi brišejo predhodni prikaz na displeju. Možno je prikazati sporočila daljša od razpoložljivega prostora na displeju. Vrsta v kateri se izpisuje sporočilo je določena z zadnjim Max7219$locate, Max7219$home_u ali Max7219$home_l ukazom. |
Ukazi Max7219$scroll_f_text_r i Max7219$scroll_p_text_r
Max7219$scroll_f_text_r par1
Max7219$scroll_p_text_r par1
Parametri: | par1 | konstanta ali ime word spremenljivke katere vsebina določa pavzo med dvema premikoma (0-65535 ms) |
Namen: | Izpisuje tekst iz spremenljivke Max7219$text tako da se sporočilo premika v desno, stolpec po stolpec, od začetka proti koncu izbrane vrste. | |
Opombe: | Ukaz Max7219$scroll_f_text_r uporablja fiksni font: širina vseh znakov je 5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik.
Ukaz Max7219$scroll_p_text_r uporablja proporcionalni font: širina znakov je 1-5 stolpcev, po vsakem izpisanem znaku se izpisuje še en prazen stolpec kot razmik. Ukazi brišejo predhodni prikaz na displeju. Možno je prikazati sporočila daljša od razpoložljivega prostora na displeju. Vrsta v katerem se izpisuje sporočilo je določena z zadnjim Max7219$locate, Max7219$home_u ali Max7219$home_l ukazom. |
Ukaz Max7219$set_pix
Max7219$set_pix par1, par2, par3
Parametri: | par1 | konstanta ali ime byte spremenljivke katere vsebino predstavlja naslov vrste piksla (pix) |
par2 | konstanta ali ime byte spremenljivke katere vsebino predstavlja naslov stolpca (col) | |
par3 | konstanta ali ime byte spremenljivke katere bit par3.0 določa v katero stanje se bo postavil naslovni piksel | |
Namen: | Postavlja ali briše piksel na naslovu pix, col. | |
Opombe: | Zgornji levi piksel diodne matrice ima naslov 0, 0.
Dovoljene vrednosti parametrov par1 in par2 so odvisne od števila modulov in njihovem razporedu v eno ali dva vrsti. Če je kateri od parametrov par1 in par2 izven mejnih vrednosti, se bo postavil Err bit in ukaz se ne bo izvršil. |
Ukaz Max7219$set_byte
Max7219$set_byte par1, par2, par3
Parametri: | par1 | konstanta ali ime byte spremenljivke katere vsebino predstavlja naslov vrste (row) |
par2 | konstanta ali ime byte spremenljivke katere vsebino predstavlja naslov stolpca (col) | |
par3 | konstanta ali ime byte spremenljivke katere vsebina se bo vpisala v piksle 0-7 naslovnega bajta | |
Namen: | Postavlja skupino 8 pikslov na naslovu row, col. | |
Opombe: | Zgornji levi bajt diodne matrice ima naslov 0, 0.
Dovoljene vrednosti parametrov par1 in par2 so odvisne od števila modulov in od njihovega razporeda v eno ali dve vrsti Če je eden od parametrov par1 in par2 izven mejnih vrednosti, se bo postavil Err bit, ukaz se ne bo izvršil. |
Ukaz Max7219$disp_graph_buffer
Max7219$disp_graph_buffer
Parametri: | nima |
Namen: | Izpisuje vsebino celotnega grafičnega bufferja na displeju. |
Opomba: | Če ima displej samo eno vrsto, je ukaz identičen ukazu Max7219$disp_graph_buffer_u. |
Ukaz Max7219$disp_graph_buffer_u
Max7219$disp_graph_buffer_u
Parametri: | nima |
Namen: | Izpisuje vsebino grafičnega bufferja pridruženega zgornji vrsti displejev. |
Ukaz Max7219$disp_graph_buffer_l
Max7219$disp_graph_buffer_l
Parametri: | nima |
Namen: | Izpisuje vsebino grafičnega bufferja pridruženega spodnji vrsti displejev. |
Opomba: | Če ima displej samo eno vrsto, je zgornja vrsta tudi spodnja in bo ukaz identičen ukazu Max7219$disp_graph_buffer_u. |
Poleg navedenih ukazov knjižnica MAX7219$SE.sub vsebuje še 24 “pomožnih” podprogramov, ki kličejo ukaze iz knjižnice. Te podprogrami imajo prefiks Max7219$$ in priporočamo, da se jih ne uporablja direktno iz uporabniškega programa. V naslednjem nadaljevanju bomo analizirali nekaj programskih primerov, ki bodo ilustrirati uporabo najvažnejših ukazov iz knjižnice.
Opomba: knjižnico MAX7219$SE.sub lahko brezplačno dobite v uredništvu revije Svet elektronike.