01.04.2004 Fachbereich Informatik Microcomputer-Labor TFH Berlin MCÜ 65 1. Laborübung -Beschreibung der Hardware -Beschreibung der Aufgabe Seite 2 -Frontplatte des Zielsystems Seiten 3 -Tabellen und Timingdiagramme Seiten 4 und 5 Entwicklungsumgebung In den Laborübungen zur Lehrveranstaltung MC65 finden im Raum 341 statt. Es sollten sich jeweils 2 Leute in einer Arbeitsgruppe finden die in der Lage sind Teamarbeit zu organisieren um somit optimalen Erfolg zu erreichen. Als Arbeitsumgebung steht Ihnen ein PC mit Windows 2000 und ein Zielsystem 8051 Mikrocontroller (80C515C / SAB80C537) von Siemens (Infineon) zur Verfügung. Die Geräte kommunizieren über seriellen Port COM1. Die PC-Arbeitsplätze sind vernetzt und befinden sich in einem Cluster der Domain Digitallabor. Auf dem Server Domain-2004 (Domain Digitallabor) ist für jede Arbeitsgruppe ein Account für Daten eingerichtet. Dieser Bereich steht für das laufende Semester zur Verfügung und ist nach Ihrem Log-In als Laufwerk H: (wie Home) verbunden. Für die Datensicherung sollten Sie selbst sorgen. Auf H: befindet sich auch ein Verzeichnis Labor in dem ein Musterprojekt mit den nötigen Einstellungen für die erste Laborübung abgelegt ist. Es kommt das Entwicklungssystem EDE der Firma Tasking zum Einsatz. Sie können die eingebundene Quelle Port.c als Test für das Zielsystem benutzen oder für eigene Zwecke modifizieren. Hilfe zur Nuzung der Tasking-Umgebung finden Sie auf der MC65-Labor-CD. Diese CD können Sie sich im Labor kopieren. Ein Rohling ist mitzubringen. Während der Arbeit im Labor können Sie auch im Verzeichnis \\MC65-Labor-CD auf die Daten zugreifen. Zielsystem 80C515c und Zielsystem 80C537 Zunächst ist es erforderlich, die Anschlüsse für Daten und Steuerleitungen mit den herausgeführten Anschlüssen am Zielsystem 8051 zu verbinden. Hierbei wird lediglich ein 40poliges Kabel an die Tastatur/Display Einheit angeschlossen. Die Leitungen für die Stromversorgung sind extra zu verbinden. Dabei ist auf die Polarität zu achten. Die Beschaltung der Ports entnehmen Sie dem Datenblatt auf der Labor-CD \\MIKROCONTROLLER\Phytec\ PhytecMinimodul515C.pdf. Die nötigen Angaben zur Anschaltung und Steuerung des LCD-Moduls sowie der Tastatur entnehmen Sie den Tabellen und Timingdiagrammen auf den folgenden Seiten 2 und 3 und den Datenblättern auf der ausgegebenen CD: MC65_CD\Peripherie. 1
Diplay und Tastatur an Zielsystem 80C515c und Zielsystem 80C537 Auf der Frontplatte der Zielsysteme befinden sich Anschlußleisten, die direkt mit den E/A Ports des 80C515C verbunden sind. An diese wird ein Board mit einem Display, einer Tastatur und 8 LEDs angeschlossen. Diese 8 LEDs sind mit den einzelnen Pins von Port 1 verbunden (Bit/Pin 0..7). Die LEDs sind fest über 270 Ohm an +5V angeschlossen und erhalten die Masse über die jeweiligen Portpins. D.h., wenn an einem Pin eine logische 0 anliegt, wird die jeweilige Diode leuchten. Alle E/A Ports werden in special function registers (sfr) behandelt, deren Ansteuerung durch einige Bibliotheksdateien von Tasking ermöglicht wird. Wenn Sie die Demoversion (befindet sich ebenfalls auf der CD) installiert haben, finden Sie diese Dateien im Include-Verzeichnis. Beschäftigen Sie sich vor der Übung mit den Eigenschaften der Ports eines 8051 µc und überlegen Sie, wie Sie konkret den Port 5 als Eingang benutzen können (Bit 3..7 - Tastatur) (Bit 0..2 Steuerleitungen für das Display). Der Mikrocontroller 80515 / 80537 wird häufig für Steuerungsaufgaben in der Automatisierungstechnik eingesetzt. Oft müssen Messdaten und andere Informationen auf einem Anzeigemedium dargestellt werden. z.b. an Mess- und Prüfgeräten oder an Dienstleistungsautomaten. In dieser Übung soll ein Liquid-Cristal-Display-Modul und ein 16-Tastenfeld am µc in Betrieb genommen werden. Die Einarbeitung in die Entwicklungsumgebung EDE ist Ziel dieser ersten Übung. Eine kurze Beschreibung zu EDE und eine Demo-Version liegt Ihnen vor (CD). Es wird dringend empfohlen, diese vor der ersten Übung durchzuarbeiten. Die Ansteuerung des Displays und der Tastatur erfolgt über Port 4 und Port 5. Die Belegung ist wie folgt: Port 4 Port 5 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 D7 D6 D5 D4 D3 D2 D1 D0 DA D C B A RS R/W E Display Daten Tastatur-16 Display Steuerung 2
Aufgabe: Lassen Sie die LEDs am Port1 in beliebiger Reihenfolge blinken (Lauflicht, Balken, wechselseitiges Blinken etc.). Schreiben Sie zu jeder Abfolge nach Möglichkeit einzelne Funktionen, die Sie der Reihe nach aufrufen. Anschließend sollen Sie die Art des Blinkens über die Tastatur beeinflussbar machen. D.h., dass z.b. beim Drücken der Taste 1 ein Lauflicht, bei Taste 2 ein Flackerlicht erscheinen etc. Weiterhin sollen Sie das Display in Betrieb nehmen. Auf dem Display sollen nach der Tastatureingabe die ASCII-Zeichen 0 F dargestellt werden. Der Tastencode soll als 4-Bit-Wert von dem Tastenfeld eingelesen werden. Benutzen Sie in der Software das DA-Bit (Data Available der Tastatur um ein Prellen der Tasten zu verhindern. Der Tastencode D C B A soll zur Kontrolle an den Leuchtdioden (low aktiv) (Port1) angezeigt werden. Beschreiben Sie die Funktion mit einem Struktogramm. Entwickeln Sie ein Programm in Assembler 8051- oder C-Programmiersprache. Programmieren Sie modular, um diese Module in weiteren projektorientierten Programmen verwenden zu können. Beachten Sie das Timing der Steuerleitungen für Schreib- und Lesezugriffe. Achten Sie jedoch vor dem Compilieren bei den Einstellungen unter EDE auf den Menüpunkt EDE/Processor Options : stellen Sie hier den entsprechenden Prozessor ein: C515c bzw. SAB80C537! Ansonsten sind die notwendigen Einstellungen unter EDE identisch und können in der Beschreibung zu EDE (CD) nachgelesen werden. Die notwendigen Steuerwörter bilden Sie aus den Tabellen auf Seite 5. Beachten Sie: Port 5 muss bidirektional betrieben werden. Überlegen Sie vor der Übung, wie das zu realisieren ist! Speicherstruktur und Adreßbereiche 80515 Auf der CD findet sich unter "Phytec Minimodul" der Abschnitt 4 mit dem Titel "Speichermodelle". Dort sind die möglichen Adressmappings des Zielsystems aufgeführt. Die untersten Speicherzellen für Code und Daten sind für die Special Function Registers, die Interrupt- Vektoren und das System reserviert, der für den Anwender freie Bereich wird ab 100H festgelegt. Die Speicherorganisation entnehmen Sie bitte dem Hardware-Manual auf der Labor-CD. 3
4
DD RAM = DISPLAY DATA RAM CG RAM = CHARACTER GENERATOR RAM 5
6