Das eBook Angewandte Mikroelektronik wurde von Hans Lohninger zur Unterstützung verschiedener Lehrveranstaltungen geschrieben. Weitere Informationen finden sie hier.


Experiment: Emulation von Gattern

Im nächsten Experiment werden verschiedene Gatterfunktionen emuliert: UND, ODER und XOR. Der Aufbau des Experiments entspricht der Abbildung EXPINV. PIN des Minimalsystems ist wieder mit den Tasten der Platine DIGMLT verbunden, POUT ist mit den Leuchtdioden von DIGMLT verbunden.

Die Abbildung zeigt den Aufbau des Experiments als Ersatzschaltbild mit den nachgebildeten logischen Funktionen. Jeweils zwei benachbarte Tasten bilden die Eingänge für das entsprechende Gatter, die Ausgänge der Gatter sind mit je einer Leuchtdiode verbunden.

Experiment: Gatteremulation

Das Programm zur Gatteremulation funktioniert folgendermaßen: In jedem Zyklus des Programms wird zuerst über PIN der Zustand der Tasten eingelesen und im Register B gespeichert. Außerdem wird eine Kopie des Tastenzustandes um ein Bit nach rechts geschoben und in Register C abgelegt. Dadurch liegen in den Registern B und C die den Eingängen der jeweiligen Gatter entsprechenden Bits an derselben Stelle. Nun wird für jedes der Gatter eine entsprechende logische Operation zwischen B und C durchgeführt und das Ergebnis mit dem Inhalt von Register E verknüpft. Am Ende wird der Inhalt von E auf POUT ausgegeben und der nächste Zyklus gestartet.

;===================================================
;---- Experiment: Gatteremulation ------------------
;===================================================
;
            .GLOBAL EXGATE
EXGATE:     IN      A,(PIN)     ;Wert von PIN einlesen
            LD      B,A         ;in B retten
            SRA     A           ;ein Bit nach rechts
            LD      C,A         ;in C retten
            LD      E,0         ;E auf null setzen
;
            LD      A,B         ;Eingangswert holen
            AND     C           ;logisches UND
            AND     01H         ;Ergebnis maskieren
            LD      E,A         ;Ergebnis in E
;
            LD      A,B         ;Eingangswert holen
            OR      C           ;logisches ODER
            AND     04H         ;Ergebnis maskieren
            OR      E           ;mit altem Erg. verknüpfen
            LD      E,A         ;Resultat in E abspeichern
;
            LD      A,B         ;Eingangswert holen
            XOR     C           ;logisches XOR
            AND     10H         ;Ergebnis maskieren
            OR      E           ;mit vorigen Erg. verknüpfen
;
            OUT     (POUT),A    ;Ausgabe des Resultats
            JR      EXGATE      ;nächster Durchgang


Last Update: 2008-05-31