De volgende fase (naar een schema toewerken)
Een 74HC138 is geschikt om de Rijen van de LED dotmatrix display af te tasten, en een 74HC595's te gebruiken voor kolom-data (16 display's x 5 kolommen = 80 kolommen totaal -> 80 bits per Rij / 1 byte -> tien 74HC595's nodig) De 74HC138 is een 3-naar-8 lijn dekoder/demultiplexer IC, met maar 3 draden (A0, A1 en A2) kun je een uitgang per keer aktiveren (Y0-Y7) , is laag maken, daarom koos ik dit IC, je kan maar een rij tegelijk aktiveren. Sluit de 74HC138 op deze manier aan op een AVR microcontroller type AT90S2313:

Op deze manier sluit je een 74HC138 aan op een AVR.
Sluit de pinnen niet tegenovergesteld aan, dus niet tegen de bit-volgorde in aansluiten, want dan wordt de software een stuk lastiger (sluit bitsgewijs aan; msb <- lsb) De 74HC138 wordt op deze manier geaktiveerd (E1, E2 aan massa, E3 aan Vcc), zie funktie-tabel in de datasheet. Nu kun je de AVR de 3 adreslijnen A0, A1, A2 laten schakelen. De poorten kun je bijv. op deze manier instellen:
.equ A0 = 0 ;adres A0 op PB0
.equ A1 = 1 ;adres A1 op PB1
.equ A2 = 2 ;adres A2 op PB2
sbi DDRB, A0 ;uitgang PB0
sbi DDRB, A1 ;uitgang PB1
sbi DDRB, A2 ;uitgang PB2
cbi PORTB, A0 ;A0 laag
cbi PORTB, A1 ;A1 laag
cbi PORTB, A1 ;A2 laag
Dit stukje assembleercode (een mogelijkheid) laat adres Y0 van de 74HC138 laag (aktief) worden, de andere 7 adres lijnen (Y1 t/m Y7) blijven hoog (+Vcc) Sluit de adreslijnen aan op de Rijen van een Anode type (gemeenschappelijke anodes) LED dotmatrix display. De kolommen aansluiten op een 74HC595 (Q0 t/m Q7) (een bit 'hoog' maken, schakeld een beeldpunt aan, bit 'laag' schakeld em uit), op deze manier kun je vrij gemakkelijk een ASCII tabel maken (zoals die van een SLO2016 bijvoorbeeld.)

Test schakeling; AT90S2313 + 74HC138 + 74HC595
Maak nu een 3 bits teller, die begint bij 000, na 7 keer of als de teller de 7 bereikt, laat je die weer resetten, enz. Tussendoor bied je telkens nieuwe data aan voor de Kolommen, dit is je multiplex (mux) routine, van hieruit werk je de software uit.
[terug naar boven]