ctr

DeMon48_128k

Intel 8049 (8048, 8748, 8749, 8035, 8039) / MCS-48 Hardware-Debugger & Monitor

Dokumentation - Kapitel 1


DeMon48_128k_NECuPD8049

1.0.0 Warum das DeMon48 Projekt entstand

Dieses Projekt entstand, weil ich seit vielen Jahren noch eine "offene Rechnung" mit dem mich damals sehr frustrierenden Intel 8049 aus der MCS-48 Mikrocontroller-Familie hatte. Jetzt bin ich mit Blick auf die auf dem Weg zum jetzigen Stand des "DeMon48"-Projekts liegenden Hindernisse und Schwierigkeiten (inklusive neuer Frustrationen) unentschlossen, ob es nicht besser gewesen wäre, diese Rechnung "offen" zu lassen. Andererseits bot die intensive Beschäftigung mit dieser obskuren, ziemlich umständlich zu gebrauchenden und nicht übermäßig gut dokumentierten Mikrocontroller-Familie für eines ganz sicher Gelegenheit :

Hacking at its best !

1.1.0 Erster Kontakt mit MCS-48

Vor sehr langer Zeit erstand ich einige Mikrocontroller des zur Intel MCS-48 Familie gehörenden Typs 8049 (konkret ist es die second-source Type "µPD8049" von Nippon Electric Company (NEC)) - ohne die leiseste Idee, wie etwas oder was damit tatsächlich anzufangen sein würde. Und weil damals keine weiteren Informationen über diese Mikrocontroller für mich verfügbar waren, fristeten sie einige Jahre ein friedliches und von einer eventuellen Nutzung ungestörtes Dasein. Es vergingen etwa 6 weitere Jahre bis ich auf einen Bausatz für ein "Entwicklungssystem" ("PECAZ" : "Preiswertester Einplatinen-Computer Aller Zeiten") für 8049-Mikrocontroller stieß.

Dieses "Entwicklungssystem" bestand aus :

1Latch (74LS373) zum Demultiplexen des Adress- und Datenbusses
1Fassung für den 8049
1Fassung für ein 2716/2732 EPROM
2Taster (*RESET, *INT)
2Schalter (T0, T1)
13LEDs mit zugehörigen Widerständen und Transistor-Treibern (P1.0 bis P1.7, P2.3 bis P2.7)
1Widerstand, Elektrolyt-Kondensator und Diode für den Power-On-Reset
111MHz Quarz und Oszillator-Kondensator
2Abblock-Kondensatoren
1Grundplatine für Schalter, Taster, Transistoren, Widerstände, LEDs, mit einer Bus-Struktur auf die 2 kleinere Karten aufgesteckt werden können (1x 8049-Karte + 1x Erweiterung)
1Kleine Platine für den Mikrocontroller, Latch und EPROM (8049-Karte)
3Steckverbinder zur Verbindung von µC-Karte und Grundplatine

PECAZPECAZ
Bilder: "PECAZ" - nachträglich u.a. für EPROMs des Typs 2764 modifiziert

Ein kompaktes Büchlein "Mikrocontroller angewandt MCS-48-Familie" aus der Elektor-Verlag GmbH (das 2 gravierende Fehler beziehungsweise Auslassungen bei der Beschreibung des Befehlssatzes enthält (MOVX @Ri,A ist falsch als 0x50,0x51 (korrekt : 0xA0,0xA1) codiert und MOVX @Ri,A (0x90,0x91) fehlt vollständig, die Indexregister sind falsch als Rr und nicht korrekt als Ri benannt ("Ri : Data memory pointer (i = 0, or 1); Rr : Register Designator (r = 0-7)" Quelle: Intel 8-Bit Embedded Controllers Handbook 1990; Kap. "MCS(R)-48 Instruction Set, Symbols and Abbreviations Used"; S.3-7), der demnach als "MOV @Rr,A" abgedruckte
"MOV @Ri,A"-Befehl wird falsch als 2-Zyklen-Befehl ausgewiesen, das abgedruckte Demonstrations-Programm ist in seiner Interrupt-Routine fehlerhaft und nur eingeschränkt funktionsfähig und die von der von Intel veröffentlichten abweichende, abgedruckte Single-Step-Schaltung ist mit Vorsicht zu genießen, wenn man die Q und *Q Ausgänge des 74LS74 FlipFlops gleichzeitig nutzen möchte - die in dieser "Sparschaltung" nicht immer komplementär sind : also insgesamt ziemlich nutzlose Literatur) sowie ein teures, programmiertes EPROM (2732) mit dem fehlerhaften Demonstrations-Programm konnte man zusätzlich käuflich erwerben.

Buch Mikrocontroller angewandt, Front Buch Mikrocontroller angewandt, Back
Bilder: "Mikrocontroller angewandt MCS-48-Familie"; ISBN 3-928051-23-7

Die damalige Unwissenheit, die fehlenden Informationsquellen, die Programmierung in Maschinensprache beziehungsweise Assembler, die teilweise durch die oben genannten Fehler im elektor-Büchlein zusätzlich erschwert wurde, das zum Testen einer Software notwendige Programmieren und Löschen des EPROMs führten nach einiger Zeit trotz des zu Beginn großen Enthusiasmus' zum Einschlafen des Interesses.

Einige Jahre später wurde durch mich ein einzelner 8049 µC eingesetzt - zu diesem Zeitpunkt bereits mit einem Exemplar des "Intel 8-Bit Embedded Controllers"-Handbuchs ausgestattet.

Buch Mikrocontroller angewandt, Back
Bild: "Intel 8-Bit Embedded Controllers"-Handbuch (1990); ISBN 1-55512-093-8