Forum: Mikrocontroller und Digitale Elektronik Z80 ein paar Fragen zu Entwicklungumgebung


von Bernd (Gast)


Lesenswert?

Hallo Leute,

ich hoffe ich bin hier richtig!

Ich würde gerne ein Projekt mit dem z80 durchziehen, da ich z.B. auch
meine Technikerarbeit mit dieser CPU gemacht habe.

Was mir fehlt ist eine Entwicklungsumgebung.

Ich habe die Tage schon viel im Internet gesucht und nichts
verwertbares gefunden.

Hat mir jemand einen Tipp?

Mir fehlt ein Assemblerpaket und ein Emulator.

Während meiner Ausbidlung zum Techniker hatte ich auch ein Cooles
System zur Hand mit dem ich die Programme im "Lebenden" Objekt im
Schrittmodus testen konnte. So was muß nicht sein, erleichtert aber die
Sache ungemein. (Vor allem in bezug auf Displays)
Damit konnte man auch die hineingeladenen Programme Bytemässig
manipulieren. Sehr geschickt um Warteschleife zu Optimieren.

Aber ich schweife ab, sorry.

Wenn jemand ein paar Tipps für mich hat, wäre ich sehr dankbar!

Gruß Bernd

von MNR (Gast)


Lesenswert?

Hm, das ist jetzt vielleicht nicht die Antwort die du hören willst, aber
der Grund, dass du über Z80 nicht viel findest ist, dass das Ding
uuuuuralt ist (obwohl da sicher noch ein paar Freaks mit rumdoktern).

Ich würde an deiner Stelle was aktuelles nehmen, entweder ein
Z80-Derivat (die sind allerdings meistens auch steinzeitlich) oder,
weil du schon 80xx kennst, ein 8051-Derivat, z.B. von Atmel.

Alternativ mit was richtig neuem anfangen, AVR, MSP430 o.ä. Da findest
du dann auch Unterstützung zu.

Gruß Matthias

von Ingo Henze (Gast)


Lesenswert?

Warum nicht Z80?
Die gibt es ja nun auch als moderne Flash-Microcontroller:
http://www.zilog.com/products/family.asp?fam=226

Der 8051er (1979) ist nicht unbedigt soviel modernen als der Z80
(1976).

Und wieso "...weil du schon 80xx kennst...", woraus schließt Du das
nun wieder.

Gruß
Ingo

von Stefan Kleinwort (Gast)


Lesenswert?

Die Z80-Derivate hat MNR doch auch erwähnt. Und der eZ80 dürfte doch ein
Stückweit vom alten Z80 entfernt sein, so dass das Wissen vom alten Z80
nicht unbedingt viel weiterhilft.

Schau Dir die Tips von MNR genau an, und hab insbesondere ein Auge auf
in-circuit-debugging (meistens, z.B. bei AVR und msp430, über JTAG).
Das  kann genau das, was Du beim Z80 so toll fandest: Ausführung in
Einzelschritten (=single-stepping), und noch viel mehr. Nur ist es
heute nicht mehr so teuer wie früher und passt in eine
Zigarettenschachtel. Assembler gibt es (fast) immer umsonst, einen
Compiler meines Wissens nur für den AVR.

Stefan

von Ingo Henze (Gast)


Lesenswert?

Das würde ja auch bedeuten, das mein, sagen wir mal Anfang der 80er
Jahre erworbenes, 8051er Wissen heute nicht mehr zu gebrauchen ist,
weil sich die vielen 8051er-Derivate auch schon weit vom Original
entfernt haben?

Ein "eZ80F91 Modular Development Kit" gibt es schon für knapp 100$,
das ist nicht teurer als ein STK500, und JTAG haben die eZ80Acclaim
auch.

Mal ein Zitat aus dem eZ80 CPU User Manual:
"The eZ80® CPU’s instruction set is a superset of the instruction sets
for the Z80 and Z180 CPUs. Z80 and Z180 programs can be executed on an
eZ80® CPU with little or no modification."

Und nach einem Blick in das "CPU Instruction Set" kam mir alles
irgendwie sehr bekannt und vertraut vor :-)

Gruß
Ingo

von Stefan Kleinwort (Gast)


Lesenswert?

Mag ja sein, dass der eZ80 viele Befehle mit dem alten Z80 identisch
hat. Trotzdem ist der eZ80 ein ziemlich komplexes Teil geworden im
Gegensatz zu seinem Vorgänger. Und das Aufbohren auf 16Mbyte Adressraum
wird am Befehlssatz auch nicht spurlos vorübergegangen sein.

Sprich: es ist vielleicht einfacher, sich in einen msp430 oder avr
einzuarbeiten, die noch eher zu den einfachen Controllern gehören, als
den eZ80 zu nehmen, aus dem einzigen Grund heraus, dass man noch ein
paar Assemblerbefehle im Kopf hat.

Vom modernen eZ80 hat übrigens auch niemand abgeraten, es ging nur um
den Ursprungs-Z80.

Stefan

von Ingo Henze (Gast)


Lesenswert?

Ja gut, ich hatte bei Bernd den Z80 eher als Synonym für die Familie
verstanden, nicht wirklich als ein System aus extra CPU, PIO, SIO usw.
Ein Neuentwicklung aus diesen Einzelbausteinen würde ich heute auch
nicht mehr unbegingt empfehlen :-)

Ein noch fast klassischer Z80 (der Z84C00) war übrigens auf dem
legendären Adaptec AHA-1542CF SCSI-Controller am werkeln, das ist nun
aber auch schon wieder etwa 10 Jahre her, fiel mir nur grade so ein...

Gruß
Ingo

von MNR (Gast)


Lesenswert?

Der Z80 ist (weitgehend) abwärtskompatibel zum 8080. Dasselbe gilt für
den 8051 (man korrigiere mich, wenn ich da falsch liege). Das bedeutet
für mich, eine gewisse Vertrautheit mit der Architektur hilft über
Anfangshürden beim Umstieg hinweg.

Der Unterschied besteht in der Informationsvielfalt, welche über die
beiden Architekturen verfügbar sind: 8051-viel, Z80-wenig.

Das war ja die Frage des Posters.

Und genausoviele Informationen (und Entwicklungsumgebungen etc.) gibt
es, wie Stefan schon schrieb, für AVR/MSP430.

Ist aber natürlich nur meine Meinung, jeder muß selber wissen, wie er
glücklich wird.

Gruß Matthias

von Martin S. (Gast)


Lesenswert?

@Bernd
ich hab hier noch ein "Z88 Development Kit" auf der Platte
rumtrudeln.

Frag mich nix zu Funktion oder Inhalt ...

Das Zip Archiv ist 2 MB groß (ist alles alles irgendwie
zeichenorientiert, nix klicki-bunti)


Wenn deine Mailbox das verkraftet, kann ich dir es mal zumailen

oder schick mir ne mail (falls ich es hier vergesse nachzusehen)

martin.s. a t ct s - con sul t. de



------------
Aus der readme:

z88dk - v1.5 16th December 2002
===============================

z88dk is a Z80 cross compiler producing binaries for over 20 different
z80
based machines. Binaries are supplied for Win32,Amiga and Solaris
platforms

von Bernd (Gast)


Lesenswert?

Hi,

@MNR: der Z80 mag Uralt sein, aber die Befehle habe ich noch alle im
Griff und die Hardware auch.
Nur weil der Z80 nicht mehr Aktuell ist, schreibe ich ihn nicht ab.
Außerdem habe ich hier noch ein paar CPUs herumliegen, massig Eproms
etc.
Der Z80 hat nichts mit den 8051 Typen zu tun. (Außer die 80 im Namen)
Der 8080 übrigens auch nicht!
In der Technikerschule "mussten" wir uns mit dem Z80 vertraut machen.
Einige haben das nicht toll gefunden weil ihre Technikerarbeit auf dem
8051 basierte. Und da habe ich nicht einmal gehört das der 8051
irgendwas mit der Z80 zu tun hat.

@Stefan Kleinwort: Den eZ80 habe ich mir schon angeschaut. Das Ding
finde ich als Z80 "Freak" richtig gelungen.
Außerdem habe ich nicht nur "ein paar Assemblerbefehle im Kopf"
sondern auch noch eine selbst erstellte Routinensammlung von denen ich
einige wieder verwenden will, weil sie a) genau machen was ich will b)
sie ausreichend getestet sind und c) weil ich sie sehr gut Dokumentiert
habe und keine Überraschungen fürchten muß.
Vielleicht hätte ich das dazuschreiben sollen. Ich wollte aber kein
80Kb Post abliefern! ;-)

@Ingo Henze: das mit dem Development Kit werde ich mir mal anschauen.
Hört sich gut an. Danke auch für den Link.
Auch wenn Du Dich jetzt schüttelst, so habe ich mit Z80 doch (erstmal)
den Z80 gemeint. Mein Projekt braucht keine Pio/Sio etc. Ein paar
Logicbausteine, Ram, Eeprom, ein Display und ein paar Taster sind
völlig ausreichend und das habe ich noch massig herumliegen! Und das
meist Unbenutzt!

Danke erst mal für die Tipps! Wer noch weis weis darf es gerne
loswerden!

Gruß Bernd

von Stefan Kleinwort (Gast)


Lesenswert?

Nicht dass Du mich jetzt falsch verstehst: ich will Dich nicht von der
Z80-Linie abbringen. Wenn Dir der eZ80 gut gefällt und Dir nicht zu
kompliziert erscheint, dann schau ihn Dir doch mal genauer an. Übrigens
finde ich ihn (auf den ersten Blick) auch ganz gelungen.

Mit den alten Chips im Schrank ist das immer so eine Sache. Ich
persönlich spare mir lieber die Arbeit, externen Speicher im Schaltplan
und auf dem Layout zu zeichnen. Platinenfläche ist ja auch nicht gerade
billig, vor Allem bei Prototypen (wenn man es selber ätzt, mag das
anders aussehen). Und zu guter Letzt ist bei den modernen Chips
mittlerweile eigendlich eine interne Debug-Schnittstelle Standard. D.h.
Du kannst alle Register, den Speicher etc. ansehen, das Flash
programmieren, Single-Stepping machen, Breakpoints setzen. Und das
alles  mit einem System, das aus einem Chip, einem Quarz, dem
Debugstecker und der Stromversorgung besteht (was davon das alles beim
eZ80-Entwicklungskit drin ist, musst Du nachsehen oder Ingo fragen).

Viel Spass, Stefan

von Martin S. (Gast)


Lesenswert?

hier ist noch ne adresse wo du dein z80 Bedarf decken könntest:

http://www.edaboard.com/

stell mal im passenden Bereich eine Anfrage

von Ingo Henze (Gast)


Lesenswert?

@Bernd
Och nee, schütteln muß ich mich da nicht :-)
"... braucht keine Pio/Sio etc ..."
Da sieht man mal wieder, das man immer alle Bedingungen beachten muß
(so man sie kennt), ehe man eine Aussage trifft.
Wenn Dein Projekt mit wenig Außenbeschaltung auskommt, kann man sicher
auch noch gut den klassischen Z80 verwenden, zumal wenn man die Teile
eh schon hat und sich damit gut auskennt.

Ende der 80er/Anfang der 90er Jahre hab ich Assembler auf dem U880 (DDR
Z80 Nachbau) gelernt.
Wir hatten da einen Cross-Assembler ("FLUX") auf dem PC. Man konnte
das fertige Programm per serieller Schnittstelle auf das Zielsystem (K
1520) überspielen. Zuvor mußte man aber dort erst noch eine Art
"Bootloader" vom Lochstreifen einlesen und starten.
Debugt wurde mit dem Betriebssystem MONITOR, also per Hexdump.

Gruß
Ingo

von Aleksej Kiselev (Gast)


Lesenswert?

http://www.oshonsoft.com/z80log.html
Ganz billig (15$), gute Werkzeuge (Simulator, Assembler, Debugger,
BASIC-Compiler), technische Unterstützung. Ständige Updates. Und für
25$ kriegst du nicht nur Z80, sondern auch PIC und 8085.

von Sven Laufersweiler (Gast)


Lesenswert?

Um einmal auf deine Frage zur Entwicklungsumgebung einzugehen.

Wenn Du mit C klarkommst dann sieh dir den SDCC
http://sdcc.sourceforge.net/ einmal an.

Ich arbeite damit an meinem Z80-System, und es klappt hervorragend. Ein
passender Assembler ist übrigens auch dabei.

von Peter D. (peda)


Lesenswert?

Ich habe auch noch ein Z80-Board aus DDR-Zeiten rumliegen mit 64kB DRAM
und 2kB EPROM. Nach dem Reset hat sich der EPROM in den DRAM kopiert
und dann abgeschaltet, also ne Art Bootloader.

Aber heutzutage bevorzuge ich 1-Chip Lösungen.

Es macht eben viel mehr Spaß, wenn man etwas programmiert hat, das dann
auch dauerhaft zu benutzen.
Und das geht eben nur, wenn man nicht für jedes Projekt ein komplettes
Board opfern muß, sondern einfach den nächsten Chip nehmen kann.

Hier mal eine Grundschaltung für die ersten Schritte mit der
8051-Familie:

http://www.mikrocontroller.net/forum/read-1-25968.html#25968


Peter

von Norbert_L. (Gast)


Lesenswert?

"Der Z80 hat nichts mit den 8051 Typen zu tun. (Außer die 80 im Namen.
Der 8080 übrigens auch nicht!"

so so, ich dachte immer, der Maschinencode des 8080 sei komplett im Z80
enthalten.
Verfluchte Sch...e, 30Jahre Hard- und Softerfahrung sind zum Teufel.

Grübel grübel....

von Bernd (Gast)


Lesenswert?

Da brauchst Du nicht zu Grübeln. Gemeint ist das der 8080 nichts mit dem
8051 zu tun hat!

Sackzement, muß denn im Internet immer irgendjemand kommen der einen
Falsch verstehen will?

Glaubst Du etwa das es mir nachdem, ich einen Z80 in einer
Technikerarbeit verwendet habe, entgangen ist das der Z80 den
kompletten Befehlssatz des 8080 enthält?

Werde mich das nächste mal so Präzise ausdrücken wie nur möglich, am
besten mit einer Wissenschaftlichen Abhandlung über jedes Wort das ich
verwende.

Oder ich schreibe gar nichts mehr.

von MNR (Gast)


Lesenswert?

Naja, dazu wollte ich eigentlich nichts schreiben, da Bernd in seiner
Technikerschule anscheinend zum Super-Profi ausgebildet wurde.

Es gab mal ein Betriebssytem namens CP/M, das lief (mit allen
Anwendungsprogrammen) sowohl auf 8080 als auch auf Z80 Systemen. Habe
ich selber mal benutzt... aber war wahrscheinlich nur Einbildung ;-).

Und zum Thema EPROM-brennen ... fällt mir echt nix mehr zu ein LOL.

Warum die Menschen immer so krampfhaft an alten Dingen festhalten, nur
weil sie sie kennen, ist mir schleierhaft. Ich habe auch noch Z80,
8085, EPROMs stangenweise+EPROMMER und den ganzen anderen Kram in
Massen herumliegen, aber womit bastel ich herum? Damit jedenfalls
nicht! Und mal was neues zu lernen finde ich spannend, deshalb habe ich
diesen Beruf gewählt.

Gruß Matthias

von MNR (Gast)


Lesenswert?

Hm, zu lange gebraucht zum schreiben. Nehme meine ersten beiden
Statements zurück. Gut das du das klargestellt hast ;-).

Gruß Matthias

von Bernd (Gast)


Lesenswert?

Hi,

Krampfhaft festhalten ist das eine. Aber nur wegen einer kleinen
Schaltung alles neu anschaffen das andere. In der Elektronik Produktion
wird die Umwelt ja nicht gerade eben wenig verschmutzt. Wieso sollte ich
mich daran beteiligen wenn es ausser dem Löttechnischen Aufwand keine
weiteren Gründe gibt? Das Ding sollte nicht mit Batterien laufen und
klein muß es auch nicht sein. Und die Leiterplatte bekomme ich mit ein
wenig geduld für Umme wenn ich sie in einem dieser
"Dreiecks"-Leiterplattedesigns bei der Prototypenfertigung mit
reinschmuggel. Mein Chef schuldet mir noch ein ganzes Kilo
Gefälligkeiten. :-) Und löten muß es ja sowieso die Lötwelle, außer
SMD, das lötet entweder ein Azubi oder die Bestückmaschine darfs in
einer Pause bestücken. Oder ich mache es selber, wenns ein Azubi macht
darf man ja sowieso nachlöten...
Das hat sich bewährt. ;-) Aber es ist natürlich richtig das man nicht
davon ausgehen kann, das jeder diese Möglichkeiten hat.

Allerdings hat sich das Z80 Entwicklungskit Problem elegant gelöst.
Ein Kollege hat mir ein Atmel Board getauscht. Ist ein STK200, sieht so
weit ja nicht schlecht aus. Außerdem hat er mir noch einige uC dazu
gegeben. 8515, 4433, 2313, 1200... jeweils mindestens 2 Stück, auch SMD
Typen.
Dazu noch ein paar Bücher über die Dinger, und mit drei(!) große Leitz
Ordner mit Laserdrucker ausgedruckten Dokuments von Atmel. Dazu eine CD
mit Zeugs von der Atmelseite.
Und das alles für zwei Orignal Z80 Bücher von Zilog, 3 CPUs, eine SIO
und PIO, ein Pfund Eproms (die EEProms behalte ich, braucht er sowieso
nicht) und zwei Steuer Platinen mit Z80 incl. dem 19" Einschub in dem
die Teile drin sind. Dazu noch ein altes Labornetzteil.
Er braucht das Zeug um seine selbstentwickelte Modelleisenbahnsteuerung
zu erweitern. Er hat sich da übrigens ein eigenes Betriebssystem
gestrickt und Programmiert das auf einem Schneider CPC.

Ich denke der Tausch war fair. Zumindest für mich. :-)

Jetzt brauche ich noch ein Steckernetzteil und dann kanns fast
losgehen.

Gruß und danke für die vielen Antworten und die Mails.

Bernd

von MNR (Gast)


Lesenswert?

Ende gut alles gut ;-)

Ach nee, jetzt gehts ja erst los...

Gruß Matthias

von Dirk (Gast)


Lesenswert?

Na, da muss ich jetzt aber noch einen drauf setzen :-)...

Also, ich habe für Dich drei Stück Z84C15, wenn Du sie willst. Sind
alles SMD-Typen, einer ist bereits auf einer Adapterplatine
aufgelötet.

Zwecks Software, schau mal bei Zilog direkt, da gibt es die Software
frei zugänglich. Ich hatte mal das komplette Entwicklungssystem für den
Z84C15 von Zilog gekauft; da waren auch fünf Disketten mit dabei. Die
Platine wurde mir leider gestohlen, aber die Software habe ich noch,
original auf 5,25"-Disketten und auf der Festplatte.

Die Software selbst kann ich Dir auf CD schicken; ich habe vor Urzeiten
vorsichtigerweise diese alten Disks kopiert, als ich mal ein Laufwerk
zur Verfügung hatte.

Wenn Du mit 'nem 10er einverstanden bist, kriegst Du die Sachen.

Viel Erfolg!
Dirk.

von Peter D. (peda)


Lesenswert?

Ich denke auch, daß Du da einen guten Tausch gemacht hast, ich hätte es
auch getan.

Die AVRs gehören nämlich auch zu den 1-Chippern, die alleine laufen.

Die Typen die Du jetzt hast, können sich zwar noch nicht selbst
programmieren, aber zum Einstieg reichen sie allemal.

Die EEPROMs kannst Du ihm auch geben, die AVRs haben sowas intern.


Ein bischen tut mir der arme Modelleisenbahner leid, der scheint ja
doch ne Menge Energie in sein Z80-System zu stecken.
Aber wenn man veraltete Hardware nimmt, sehe ich schwarz, andere zum
Nachbauen zu animieren und ein paar Euro für seine Mühe ernten zu
können.

Auch in der Modelleisenbahn gehts eindeutig in Richtung verteilte
Intelligenz, also z.B. ein 1-Chipper, der eine Weiche samt Signal
steuert und über einen seriellen Bus an der Zentrale hängt.
19 Zoll Boliden will da keiner mehr sehen.

Wäre mal interessant zu erfahren, warum er die AVRs nicht dafür
verwendet hat.


Peter

von Bernd (Gast)


Lesenswert?

Hallo Leute,

@Dirk: ich frage meinen Kollegen mal ob er Interesse hat!

@Peter: Die EEPROMs möchte ich in einem Projekt einsetzen, für das ich
mal ein paar Wintermonate Zeit brauche. Die will ich für eine
Langzeitüberwachung im Auto benutzen. Oder ich nehme eine billige
MMC-Karte, da muß ich dann nur einen Schlitz in die Mittelkonsole
machen und das wäre an sich ja schon um längen Praktischer. Mal sehen.
Wegschenken kann ich sie immernoch. :-)

Warum der Kollege einen Z80 genommen hat? Damals gab es weder AVR noch
PIC. Und er hatte Beruflich mit dem Z80 zu tun (Anscheinend mit Hard-
und Software). Und dann war da ja noch der CPC. Da hat es sich wohl
angeboten.
Die erste Ausbaustufe der Modellbahnsteuerung geht wohl auf das Jahr 87
oder 88 zurück.
Veröffentlichen will er sowieso nichts, anscheinend hat er genug Geld.
:-)

Gruß Bernd

von Martin S. (Gast)


Lesenswert?

hier noch was für dich (bzw. nun für deinen Freund)

http://www.oshonsoft.com/

z80 Simulator / IDE

von Profi (Gast)


Lesenswert?

Vor vielen vielen Jahren hatte ich auch viel mit dem Z80 gebaut.
Die nächste Stufe war ein Hitachi HD64180, der war Genuss pur!
Angeblich ähnlich dem Zilog Z180.
Jedem Z80-Fan würde ich dem ans Herz legen.
http://www.gaby.de/z80/z80lives.htm
http://www3.brinkster.com/Redline/TinkerBot/processors/z80-64180.asp

von DRCRAZY (Gast)


Lesenswert?

ich habe da auch noch einen link...

www.drcrazy.de/nkc

:) das ist mal ein kompletter rechner , modular und sehr Flexibel

Aus SBC2 und IO/E kann man dann auch schon gute steuerungen realisieren
...

unter anderem gibt es sogar ein SPS epromm ... :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.