Artikel
Low-cost LCD-controller, deel 2
De hardware
In dit deel wordt de theoretische kennis uit deel 1 toegepast om een matrixdisplay uit een computerspelletje aan te sturen met een 8051 microcontroller. Omdat de data in hoog tempo naar het display gestuurd moet worden, is gebruik gemaakt van een hardware-truc om de CPU gedeeltelijk van dit werk te ontlasten.
Matrixdisplays moeten aangestuurd worden met een framerate van minstens 50 Hz om flikkeren van het display te voorkomen. Deze displaycontroller is opgebouwd rond een 8051 microcontroller, die het weer te geven beeld in RAM-geheugen bewaart en in het juiste tempo naar het display stuurt. Het aansturen van het display vraagt veel van de CPU. Om een deel van de capaciteit van de CPU beschikbaar te houden voor andere taken, is gekozen voor een oplossing die gedeeltelijk in hardware werkt. Normaal gesproken zou de CPU de bytes één voor één uit het geheugen moeten lezen en ze naar een output-poort schrijven. Dankzij de hier gebruikte truc in de hardware is dat in deze schakeling niet nodig. De besturing van het LC-display is rechtstreeks verbonden met de databus en kan de data op de bus dus gebruiken zonder tussenkomst van de CPU.
Matrixdisplays moeten aangestuurd worden met een framerate van minstens 50 Hz om flikkeren van het display te voorkomen. Deze displaycontroller is opgebouwd rond een 8051 microcontroller, die het weer te geven beeld in RAM-geheugen bewaart en in het juiste tempo naar het display stuurt. Het aansturen van het display vraagt veel van de CPU. Om een deel van de capaciteit van de CPU beschikbaar te houden voor andere taken, is gekozen voor een oplossing die gedeeltelijk in hardware werkt. Normaal gesproken zou de CPU de bytes één voor één uit het geheugen moeten lezen en ze naar een output-poort schrijven. Dankzij de hier gebruikte truc in de hardware is dat in deze schakeling niet nodig. De besturing van het LC-display is rechtstreeks verbonden met de databus en kan de data op de bus dus gebruiken zonder tussenkomst van de CPU.
Materials
Gerber bestand
De PCB bij dit artikel is als Gerber file beschikbaar gesteld. Elektor Members kunnen exclusief deze files gratis downloaden en gebruiken om de PCB zelf af te drukken met geschikte apparatuur óf de Gerber te laten drukken via een dienstverlener.
Elektor kan u bijvoorbeeld de PCB Service van onze partner Eurocircuits van harte aanbevelen of AISLER.
Het gebruik van onze Gerber files is vrijgegeven onder een Creative Commons- licentie. Creative Commons biedt auteurs, wetenschappers en andere creatieve makers de vrijheid om op een flexibele manier met hun auteursrechten om te gaan.
PCB
Onderdelenlijst
Weerstanden:
R1,R2 = 10 k
P1= instelpot 10 k
Condensatoren:
C1,C2 = 10 p
C3,C4,C9..C13 = 100 n
C5..C8 = 10 µ/16 V radiaal
Halfgeleiders:
D1 = BAT85
D2 = zener 12 V/400 mW
IC1 = 74HC157
IC2 = 74HC74
IC3 = 74HC04
IC4 = 74HC27
IC5 = 74HC123
IC6,IC7 = MAX1044/CP
Diversen:
JP1 = 3-polige header met jumper
K1 = 12-polige pinheader
K2 = 34-polige boxheader
K3 = 3-polige pinheader
R1,R2 = 10 k
P1= instelpot 10 k
Condensatoren:
C1,C2 = 10 p
C3,C4,C9..C13 = 100 n
C5..C8 = 10 µ/16 V radiaal
Halfgeleiders:
D1 = BAT85
D2 = zener 12 V/400 mW
IC1 = 74HC157
IC2 = 74HC74
IC3 = 74HC04
IC4 = 74HC27
IC5 = 74HC123
IC6,IC7 = MAX1044/CP
Diversen:
JP1 = 3-polige header met jumper
K1 = 12-polige pinheader
K2 = 34-polige boxheader
K3 = 3-polige pinheader
Discussie (0 opmerking(en))