Für die Ansteuerung einer 7-Segment-Anzeige muss für jede Ziffer ein bestimmtes siebenstelliges Bitmuster am Ausgabeport anliegen. Das Bitmuster hängt natürlich von der Art der verwendeten 7-Segment-Anzeige ab. Auf jeden Fall sollte man eine Anzeige mit gemeinsamer Anode verwenden. Der 16C84 hat die Eigenschaft, dass er gegen Masse etwa 50 mA ziehen kann. In einen auf High geschalteten Ausgang können dagegen nur 20 mA fließen. In diesem Fall entspricht eine 1: Segment aus- und eine 0: Segment eingeschaltet. Die Invertierung kann auf zwei Arten geschehen:
Aus dem Belegungsplan für die von uns verwendete Anzeige entnimmt man die entsprechenden Daten. Man kann die Bitmuster entweder binär (z.B. B'10000001' ) oder hexadezimal (81) angeben.
|
Aufgaben:
Fülle die obige Tabelle aus und berechne die Anzeige-Worte für die entsprechenden Ziffern.
Wie muss man Bit7 setzen, um die Einer- bzw. die Zehnerstelle der Anzeige anzusteuern?
Schreibe ein Programm, mit dessen Hilfe eine der Anzeigen von 9 auf 0 herunterzählt.
Lege die Anzeigedaten im Speicher ab. Las ein Register von 9 auf 0 herunterzählen und benutze den
Inhalt des Registers um das entsprechende Anzeigewort in den PortB laden.