mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 8048 - externer Speicherzugriff - wie?


Autor: nummernschalter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe eine Frage an die "Erfahrenen" unter Euch.

Es geht um den 8048. Mit den Befehlen MOVX A,@Rx und MOVX @Rx,A soll man 
Daten zwischen externem Speicher und dem Akku austauschen können. 'x' 
kann jeweils 0 oder 1 sein und verweist auf die Register 0 oder 1 in 
denen eine 8bit breite Adresse steht. Für die möglichen externen 2K 
RAM/ROM fehlen noch 4bit. Wo lege ich die fest?

Danke und Gruß

Autor: Andreas K. (a-k)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
MOVP A,@A, wenn du mit dem externen Speicher das ROM bzw. den 
Codespeicher meinst. Mit MOVX ist eigentlich ein anderer externer 
Speicher gemeint, der tatsächlich mit nur 8 Bits adressiert wird.

Die auch bei MOVP auf den ersten Blick fehlenden Bits entstammen dem PC, 
d.h. der Befehl muss in der gleichen Page stehen. War halt Intels erster 
Versuch eines Microcontrollers.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Apropos: Aus welchem Museum hat du dieses Urviech denn geklaut?

Autor: Ekschperde (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Naja, lieber 8048 als PIC...

Duck und wech...

Autor: nummernschalter (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Danke. Werde es ausprobieren.

>...Aus welchem Museum hat du dieses Urviech...

Hatte vor Jahren mal einen 'PECAZ - Preiswertester Einplatinen Computer 
Aller Zeiten' Bausatz von Dipl.Ing.H.Weidner bei Völkner gekauft, den 
ich vor ein paar Tagen wiedergefunden habe. Will mal sehen, was damit 
noch möglich ist...

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nummernschalter wrote:
> Hatte vor Jahren mal einen 'PECAZ - Preiswertester Einplatinen Computer
> Aller Zeiten' Bausatz von Dipl.Ing.H.Weidner bei Völkner gekauft, den
> ich vor ein paar Tagen wiedergefunden habe.

Jahre reicht wohl nicht, das muß schon Jahrzehnte her sein.

> Will mal sehen, was damit
> noch möglich ist...

Warscheinlich nicht viel.
Nen C-Compiler wirds garnicht geben und nen Assembler, der unter Windows 
läuft wohl auch nicht.

Wenn der 8048 pinkompatibel mit dem 8051 ist, kannste das Board ja mit 
nem AT89C51ED2 oder ATmega162 pimpen.


Peter

Autor: Andreas K. (a-k)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Peter Dannegger wrote:

> Nen C-Compiler wirds garnicht geben und nen Assembler, der unter Windows
> läuft wohl auch nicht.

C-Compiler sicherlich nicht. Assembler gibt's schon ein paar. 
Beispielsweise http://john.ccac.rwth-aachen.de:8000/as/

> Wenn der 8048 pinkompatibel mit dem 8051 ist, kannste das Board ja mit
> nem AT89C51ED2 oder ATmega162 pimpen.

Also bitte! Du wirst einen Oldtimer doch nicht mit GPS und 
LED-Scheinwerfern ausstatten wollen? ;-)

Autor: cheflooser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Nummernschalter,

wenn Interesse besteht an Teilen und Zubehör, melde dich mal.
Hab noch Teile und Unterlagen.

Autor: aminox86 (Gast)
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Hallo nummernschalter,
für den Datentransfer aus dem Rom, den der 8048 nur seitenweise 
ansprechen kann(=256 Byte lange Abschnitte beim 8048), in den Akku gibt 
es zwei Befehle.
1.
movp3 a,@a ;hole datum aus page 3, dessen adresse im akku steht, in den
           ;akku. der befehl ist besonders für die arbeit mit
           ;tabellen gedacht. adresskodierung findet im befehl statt.
2.
movp a, @a ;hole datum aus aktueller seite(=der befehlszähler adressiert
           ;die aktuelle seite) plus akkuinhalt, in den akku. der befehl
           ;eignet sich besonders für die arbeit mit sprungtabellen.
           ;adresskodierung wie oben.

Die von dir angesprochenen Befehle movx a, @ri sprechen den externen
Schreib/Lesespeicher(RAM, memory-mapped IO) an, wobei der Adressraum auf
256 Byte beschränkt ist.

Ich selbst verwende den 8048 bei Gelegenheit. Innnerhalb der letzten 6 
Monate habe ich zwei Prüfgeräte, ein Tastaturprüfgerät und ein Gerät zur
Funktionsprüfung von Hochleistungs-LED-Scheinwerfern, mit diesem 
Prozessor
(OTP-Versionen) realisiert.

Die Programmierung des 8048 hat was.
Der Befehlssatz kennt nur die Addition, sodass die Grundrechenarten zur 
Herausforderung werden, es gibt keinen Vergleichsbefehl und bedingte 
Sprünge beziehen sich nur auf die Hardware des Prozessors.
Soweit mir bekannt, ist nur Assemblerprogrammierung möglich, es 
existieren keine Compiler für Hochsprachen, nicht mal PL/M.
Es gibt einige, wie ich finde, gute Entwicklungsumgebungen mit allen 
Schikanen, die unter DOS laufen(vielleicht auch unter anderen 
Betriebssytemen?!).
Eine wirkliche Hürde ist die Übertragung des Programms zum Prozessor.
Für die Programmentwicklung verwende ich einen Epromsimulator, Marke 
Eigenbau, den ich auch bei anderen Prozessoren, die externen RAM 
adressieren können, benutze.

Programmbeispiele sind sehr selten. Ich hänge mal eine 
Entwicklungsumgebung
für Dos an, die zwei recht aussagekräftige Beispiele enthält.

mfg

Noch eine Anmerkung.
Nach seriösen Quellen ist der 8048-Kern der mit Abstand meist gefertigte 
Prozessor überhaupt. Das ist gut nachvollziehbar, man braucht nur seinen 
PC anzusehen. Diese Quellen behaupten ausserdem, das der 8048 immer noch 
gefertigt werden wird, wenn PIC, AVR und Konsorten schon längst 
vergessen sind.

Autor: nummernschalter (Gast)
Datum:
Angehängte Dateien:
  • preview image for 48.jpg
    48.jpg
    22,1 KB, 757 Downloads

Bewertung
1 lesenswert
nicht lesenswert
Hallo,

ich bin überrascht, daß es doch noch so viele Leute gibt, die sich mit 
dem 8048 befassen ...

In der Tat gibt es in der Bucht einen Händler, welcher 80C49 
stangenweise unter die Leute bringt. Dies deutet stark daraufhin, daß es 
vor nicht all' zu langer Zeit noch Geräte gab, die damit bestückt 
werden.

Zwei Beispiele aus der Vergangenheit fallen mir da sofort ein:
*Videopac G7000
*Kosmos CP1 Baukasten

Für alle Interessierten habe ich mal ein Bildchen meines PECAZ 
angehängt.

Gruß

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
aminox86 wrote:

> Ich selbst verwende den 8048 bei Gelegenheit. Innnerhalb der letzten 6
> Monate habe ich zwei Prüfgeräte, ein Tastaturprüfgerät und ein Gerät zur
> Funktionsprüfung von Hochleistungs-LED-Scheinwerfern, mit diesem
> Prozessor
> (OTP-Versionen) realisiert.

Gibts dafür auch nen einleuchtenden Grund (haufenweise noch rumliegen; 
keine Lust in C zu programmieren, weils Programm zu schnell fertig ist; 
den Thrill brauchen, wenn man nen OTP verbrannt hat, Flash-User sind 
alles Weicheier)?

Sind das schon CMOS oder werden die noch richtig heiß?


Peter

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nummernschalter wrote:
> Für alle Interessierten habe ich mal ein Bildchen meines PECAZ
> angehängt.

1983/KW52, ist ja ganz schön alt.

Das da unten sieht ja wie ein russischer EPROM aus.
Die konnten sogar schon bis zu 25 Löschzyklen durchhalten.
War immer prickelnd, nach jedem Löschen etwa 20% an Leichen 
auszusortieren.


Peter

Autor: nummernschalter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das ist ein Russe aus einem M025 User PROM-Modul für den KC85/2-4. 
Hatte gerade nichts anderes. Die PECAZ-Platine kann sowohl mit 2K (2716) 
als auch mit 8K (2764) EProms betrieben werden, was sich mit der 
Steckbrücke einstellen lässt. Beim 8K sind allerdings nur die unteren 4K 
nutzbar.

Autor: aminox86 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter Dannegger

In der Tat, ich habe von den OTPs noch einige bei mir ´rumliegen,
´sind gute alte NMOS, die ca. 1 Watt bei 5V verbraten.
Ich hab´ mit dem 8048 ´mal angefangen, daher bin ich mit der Architektur 
vertraut und solange ich noch ein paar Brocken habe, verwende ich sie
eben, einfach weil sie mir für den Müll zu schade sind.

mfg

Autor: Ernst S. (o-fey)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe beim Aufräumen gerade die Broschüre "Das 8039 8048 8748 
Brevier" von H. Weidner gefunden - leicht angegilbt, aber noch gut 
erhalten, und eigentlich zu schade zum Wegwerfen. Wenn jemand die haben 
möchte, verschicke ich sie gerne gegen Portoerstattung.

Autor: Tipper (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
In so mancher PC-Tastatur werkelt heute noch ein 8048(-Kern)...

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, genauer gesagt ein 8042. In alten PCs (386, 486) bisweilen sogar 
gesockelt. In modernen Geräten nur als Bestandteil irgendeines 
vielpoligen IO-Controllers.

Autor: Wilhelm F. (ferkes-willem)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian schrieb:

> Ja, genauer gesagt ein 8042. In alten PCs (386, 486) bisweilen sogar
> gesockelt. In modernen Geräten nur als Bestandteil irgendeines
> vielpoligen IO-Controllers.

Auch wenn der Thread sehr alt ist: Ich kam da heute mal zufällig von 
externer Seite hier hinein, weil ich gerade mit interessanten 
8048-Derivaten (Siemens SAB80C382) auf dem Steckbrett bastele.

Tastaturen haben tatsächlich oft einen 8048, oder auch 8051. Der 8042 
ist aber was anderes, und zwar der Slave-Controller in einem IBM-PC AT, 
der die PC-Tastatur auch mit bearbeitet.

Und zwar besitze ich aus Alt-PCs noch so ein paar 8041 oder 8042, sogar 
eine EPROM-Version 8742, die meisten haben aber eine völlig fremde 
Bezeichnung, woraus man das 8048-Derivat gar nicht mehr erkennt.

Diese Seite hier

http://devster.monkeeh.com/z80/upi42/

war ganz amüsant: Da zeigt jemand, wie man den alten 8041 aus einem PC 
auch wieder teilweise als 8048 benutzen kann. Und zwar braucht der als 
Besonderheit überhaupt gar nicht mal diesen Busmultiplexer 74373, den 
man bei Intel-µC 8048, 8085, 8051, meistens braucht. Man kann ihn 
einfach und schnell auf dem Steckbrett aufbauen, und Adressen und Daten 
direkt mit einem EPROM verbinden. Praktisch!

Allerdings sind die Funktionalitäten auch sehr begrenzt: Man hat da ohne 
Zusatzaufwand immerhin 5 reine Outputs, um daran eine LED blinken zu 
lassen, aber auch beliebig was anderes zu machen. Bisher glaubte ich, 
diese Bausteine könne man zu gar nichts mehr gebrauchen. Mehr als 5 
Outputs kann man aber auch in einem Baustein wie dem Busmultiplexer 
74373 latchen.

Ob man da auch Inputs hinein bekommt, um aktiv was zu verarbeiten, 
soweit bin ich noch nicht, muß es erst noch heraus finden. Die Bausteine 
haben ja ein Maskenprogramm für ihren ursächlichen Zweck, was zum Test 
aber abgeschaltet wird.

Autor: Ralph H. (ralph70)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe so ein PECAZ Weidner Board noch hier liegen, die ICs sind auch noch 
in der Kiste nur die restlichen Bauteile nicht mehr und habe keinen 
Bestückungsplan. Hat da jemand zufällig einen Link?

Liebe Grüsse
Ralph

Autor: hinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Mathew (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit dem 8048 war so einiges Möglich, auch mit dem minimalistischen 
Arbeitsspeicher.
Ich hatte damit z.B. einen Dart-Automat gebaut für 4 Spieler mit 4 
verschiedenen Spielen zur Auswahl.
Lange bevor es die an jeder Tankstelle zu kaufen gab.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.