Forum: Mikrocontroller und Digitale Elektronik μC 8051 Demoboard (AT89C51ED2)


von Andreas B. (te-bachi)


Angehängte Dateien:

Lesenswert?

Grüezi Miteinander

Für das nächste Semester an meiner FH werden wir 8051 μC (SAB 80C517A) 
verwenden. Um mich über den Sommer schon etwas einzuarbeiten, möchte ich 
ein Demoboard machen. Da der SAB 80C517A nicht mehr verfügbar ist, habe 
ich mir einen AT89C51ED2 besorgt.

Beim Design bzw. bei der Entwicklung meines Demoboards habe ich mich auf 
diesen Beitrag gestützt:
Beitrag "AT89C51ED2: Flash Prorammierung über ISP-Adapter möglich ?"
http://www.mikrocontroller.net/attachment/19201/HW_Doku_AT89C51ED2-Testboard.pdf

Damit mein zeitintensives Ätzen, Lötstopplack Laminieren und Bohren 
nicht umsonst sein könnte, weil ich etwas Grundlegendes falsch 
"erarbeitet habe", möchte ich meinen Schaltplan (demoboard.pdf) prüfen 
lassen. Da ich noch nie einen MAX232 benutzt habe, kann es sein, dass 
ich etwas falsch angeschlossen habe...

Fragen dazu:
o Warum ist in meinem Schaltplan !ALE (Address Latch Enable/Program 
Puls) offen?
o Wofür würde man !ALE verwenden. Laut Datenblatt für externes Memory, 
doch wie würde das funktionieren? Kann man Ports für Adress- und 
Datenbus "misbrauchen"?
o Der UART-ISP von "Dominik Bollivo" stimmt nicht mit dem Atmel "Auto 
ISP Interfacing" (AtmelConnections.pdf) überein. Kann ich Dominik's 
UART-ISP ohne Probleme verwenden?

Vielen Dank im Voraus!

Andreas

von Carlos (Gast)


Lesenswert?

Hallo Andreas,
das ALE-Signal wird benötigt, um einen Daten- und Adressbus zum 
Anschluss für externe Peripherie-Einheiten zu erzeugen.
Wenn Du genau hinschaust, ist der Port P0 beim 8051er doppelt belegt: 
hier werden u.a. im Zeitmultiplex (also hintereinander) die Infos für 
den unteren Adressbus (A0 - A7) und den Datenbus (D0 - D7) rausgegeben 
und über Port P2 erscheinen dann die oberen Adressbits A8 - A15.
Um nun die Infos am Port P0 "auseinander zu bekommen" wird das 
ALE-Signal benötigt (und noch externe Zusatzhardware).
In Deinem Fall braucht Du ALE nicht, Du hast ja keine externen Einheiten 
angeschlossen.

Warum möchtest Du eine solch ausgefallene "ISP-Schaltung" verwenden ?
Ich würde für den Anfang die ganz normale ATMEL-Standard-Schaltung für 
den Downlaod über die UART-Schnittstelle verwenden und den Download 
einfach mit FLIP machen.
Da Du sowieso einen Reset-Taster benötigst, macht der zusätzliche 
Boot-Taster in einem Experimental-Board auch nichts mehr aus.

Gruß Carlos

von Andreas B. (te-bachi)


Lesenswert?

Ahhh... wunderbar! Das heisst, mein AT89C51ED2 kann sogar externes 
Memory (oder evtl. I/O) ansprechen?

Ich habe letztes Semester in einem Kurs einen 80C186-Kompatiblen 
Prozessor verwendet und Adresskodierung, I/O- und Memory-Zugriff, etc. 
behandelt (Decoder 74X138, Latch 74X573, ...). Dachte nicht, dass ein 
Mikrocontroller das auch kann.

Wie kann ich auf das externe Memory zugreifen? So wies aussieht, kann 
ich 16 Bit adressieren: 64 kB externes RAM

Wegen dem UART-ISP: Deine ATMEL-Standard-Schaltung entspricht dem "Auto 
ISP Interfacing" (AtmelConnections.pdf, Seite 3)? Das heisst, wenn ich 
die ISP-Taste gedrückt halte, kann ich den μC programmieren, sonst 
nicht?

von Carlos (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Andreas,
das was Du über das Bus-Multiplexen und Demultiplexen gelernt hast, 
dürfte auch hier zutreffen (denke immer daran: der 8051er war so 
ziemlich der erste µC auf der Welt mit diesen Eigenschaften, alle 
anderen Entwicklungen  haben viele Konzepte vom 8051er übernommen).
Du kannst auf Grund der Bussysteme natürlich eine Vielzahl von externen 
Peripherie-Einheiten anschließen: Speicher, RTC, A/D-D/A-Wandler, 
LC-Display, und, und und.

Ich selber verwende hier u.a. ein einfaches Experimatal-Board von 
Palmtec bzw. Elektor mit einem anderen 8051er von Atmel: der kann etwas 
mehr, hat u.a. schon 64 kByte Programmspeicher und 2 kByte Datenspeicher 
ON-Chip, desgleichen einen 8-kanaligen A/D-Wandler mit 10 Bit Auflösung, 
und einiges mehr (dafür ist der Chip aber etwas teurer).
Im Anhang findest Du die Doku dazu, davon kannst Du einiges übernehmen, 
z.B. die Beschaltung des MAX232: sehr einfach und der Download klappt 
wunderbar zusammen mit FLIP.
Mit dem geichen µC gibt es auch ein größeres Board, bei dem schon einige 
externe Peripherie-Einheiten angeschlossen sind: RTC, LC-Display, DUART, 
etc.

Gruß
Carlos

von Andreas B. (te-bachi)


Angehängte Dateien:

Lesenswert?

> Ich selber verwende hier u.a. ein einfaches Experimatal-Board von
> Palmtec bzw. Elektor mit einem anderen 8051er von Atmel: der kann etwas
> mehr
Noch mehr als meiner? Ahh... habs gesehen: 10bit AD-Wandler und 
CAN-Controller. Aber weniger Ports. Hatte eben beide zur Auswahl: 
AT89C51CC03 und AT89C51ED2

Wie kann ich mit Assembler bzw. C über externen Bus zugreifen?
MOV DPTR, #0FA02h
MOVX A, @DPTR

Werde mir mal deinen Schaltplan anschauen. Habe im Moment 1:1 von Atmel 
den "Auto ISP Interfacing" übernommen (demoboard_v2.pdf)

von Joachim .. (joachim_01)


Lesenswert?

OT:
Ach Gottchen, was für n altes Zeug. Klar, 8051 kann man unterrichten, 
aber da braucht man sich nicht wundern, wenn Deutschland immer weiter 
zurückfällt. Wie alt is n der Prof? 70? Hauptsache, die Rente ist sicher 
und nach mir die Sintflut...

von Andreas B. (te-bachi)


Lesenswert?

Hmm... deine ISP-Schaltung ist wieder ganz etwas anderes ;-(
Was tun? Dominik, Atmel oder Palmtec folgen...

von Andreas B. (te-bachi)


Lesenswert?

> OT:
> Ach Gottchen, was für n altes Zeug. Klar, 8051 kann man unterrichten,
> aber da braucht man sich nicht wundern, wenn Deutschland immer weiter
> zurückfällt. Wie alt is n der Prof? 70? Hauptsache, die Rente ist sicher
> und nach mir die Sintflut...
Nicht ganz 70, doch "älteren Datums". Doch auch an den Berufsschulen 
werden 8051 verwendet... und diese Dozenzen waren jung (ca. 30 J.)

Was würdest denn du verwenden? ARM? ATMEGA?
Habe ATMEGA schon verwendet und werden übernächstes Semester ARM 
anschauen ;)

von Joachim .. (joachim_01)


Lesenswert?

Keine Ahnung was ich nehmen würde, die Auswahl ist sehr groß. Modern und 
billig auf jeden Fall. Aber n System mit 80517 und notwendigem externen 
Bus für Eproms? Hab mich 1995 mit dem '515 beschäftigt... gibts für 
8051er eigentlich n freien Compiler? Dominiert Keil noch immer?

von Andreas B. (te-bachi)


Lesenswert?

Naja... es gibt freie Compiler für Assembler (Mnemonic -> HEX). 
C-Kompiler kann es auch geben: keine Ahnung.

Aber Keil dominiert immer noch ;)

von Matthias K. (matthiask)


Lesenswert?

SDCC

von Carlos (Gast)


Lesenswert?

Auch auf die Gefahr hin, daß mich hier alle wieder "hauen":
Joachim, schau Dir mal die 8051er-Typen von Dallas, Texas Inst. und NXP 
an: dann wirst Du sehen, daß der 8015er noch lange nicht tot ist, und so 
mancher ATMEGA ganz schön blaß gegenüber den Leistungen (z.B. Full USB 
und kompletten Funk-Tranceiver auf einem Chip) dieser Chips aussieht, 
von PIC mal ganz zu schweigen.
Nicht umsonst haben viele große Firmen eine eigene 8051er-Linien, so 
auch Atmel.
(Leider) sind diese 8051er eben ein großer Industrie-Standard und diese 
Firmen kümmern sich absolut nicht mehr um den Hobby-Markt (warum auch 
??).
Das macht eben Atmel mit seinen ATMEGAs etwas besser, verkauft aber 
trotzdem so ganz nebenbei Millionen Stück 8051er an die Industrie, weil 
er so gut und am weitesten verbreitet ist.

Grüße
Carlos

von Carlos (Gast)


Lesenswert?

Andreas,
schau Dir den Wickenhäuser C-Compiler an: in der Demo-Version kannst Du 
Programme bis 8 kByte schreiben, das reicht für viele Sachen dicke aus.
Die Vollversion (bis 64 kByte große Programme) kostet dann ca. 70,00 €.

Carlos

von Andreas B. (te-bachi)


Lesenswert?

@Matthias K.
> SDCC
SDCC -> http://sdcc.sourceforge.net/
Vielen Dank! Hoffe, mein AT89C51ED2 wird auch unterstützt

"AVR and gbz80 targets are no longer maintained."
Ich hoffe, nicht Atmel, sondern nur AVR...

von Matthias K. (matthiask)


Lesenswert?

Andreas Bachmann schrieb:
> SDCC -> http://sdcc.sourceforge.net/
> Vielen Dank! Hoffe, mein AT89C51ED2 wird auch unterstützt

auf jedem Fall...

von Andreas B. (te-bachi)


Lesenswert?

Matthias K. schrieb
> auf jedem Fall...
Wunderbar!

Kannst du mir noch etwas wegen "Auto ISP Interfacing" helfen?
ISP von Dominik Bollivo -> siehe erster Beitrag von mir (demoboard.pdf)
ISP von Atmel -> siehe dritter Beitrag von mir (demoboard_v2.pdf, 1:1 
von AtmelConnections.pdf)
ISP von PalmTec -> siehe Beitrag Carlos (PT-FS_V1-1.pdf)

Oder spielt das nicht so eine Rolle?

von Wilhelm F. (Gast)


Lesenswert?

Andreas Bachmann schrieb:

> Für das nächste Semester an meiner FH werden wir 8051 μC (SAB 80C517A)
> verwenden. Um mich über den Sommer schon etwas einzuarbeiten, möchte ich
> ein Demoboard machen. Da der SAB 80C517A nicht mehr verfügbar ist, habe
> ich mir einen AT89C51ED2 besorgt.

Bei deinem Demo-Board solltest du eines nicht vergessen: Der 80C517A hat 
nur den 8051-Core, und all dessen Funktionalitäten, z.B. die ersten 4 
I/O-Ports. Aber sonst noch eine ganze Menge integrierte Peripherie. Wie 
wichtig ist denn das?

Aber, falls es noch Fragen zum 80C517A gibt: Ich arbeite gegenwärtig 
auch noch mit einem 80C517A-Board (Opto-Net-Mini vom 
Otmar-Feger-Verlag).

Fürs Hobby reicht das noch allemal.

von Andreas B. (te-bachi)


Lesenswert?

Wilhelm Ferkes schrieb
> Bei deinem Demo-Board solltest du eines nicht vergessen: Der 80C517A hat
> nur den 8051-Core, und all dessen Funktionalitäten, z.B. die ersten 4
> I/O-Ports. Aber sonst noch eine ganze Menge integrierte Peripherie. Wie
> wichtig ist denn das?
Dass ich im Semester einen 80C517A haben werde, ist nicht so wichtig. Da 
ist alles schon zusammengebaut und wir werden nur die Architektur und 
die Assembler-Befehle anschauen und etwas Praxis machen 
(Tastatur-Matrix, BCD, etc.)

Doch um mich etwas einzugewöhnen, möchte ich "zu Hause" mein eigenes 
Demoboard basteln. Die noch vertriebenen Demoboards mit dem 80C517A sind 
sau teuer (> 200$). Der AT89C51ED2 hat mich 14 € gekostet. Den Rest 
möchte ich selber machen, heisst: Layout machen, Platine ätzen, etc.

von Matthias K. (matthiask)


Lesenswert?

http://www.mikrocontroller.net/articles/USBPROG-51_Flip/FlashMagic_Universal_Programmieradapter

Falls Du es über USB machen willst. Autoisp geht damit. Kannst auch den 
FT232 weglassen und die Signale von einem RS232 Treiber (nicht 
vergessen!)  abgreifen. Den rechten Tei Q1 und U2 brauchst Du für den 
At89C51ED2 nicht, nur U3

von Andreas B. (te-bachi)


Lesenswert?

Matthias K. schrieb
> Falls Du es über USB machen willst. Autoisp geht damit. Kannst auch den
> FT232 weglassen und die Signale von einem RS232 Treiber (nicht
> vergessen!)  abgreifen. Den rechten Tei Q1 und U2 brauchst Du für den
> At89C51ED2 nicht, nur U3
Oh, wow! So was möchte ich. Werde mir sowas im September mal bauen. Habe 
leider nur bis Samstag Zeit, mir ein möglichst einfaches Demoboard 
zusammenzuschustern. Danach habe ich meine Werkstatt nicht mehr und 
weile in den Ferien (hoffentlich mit dem Demoboard). SMD und solche 
Dinge habe ich zwar mal ausprobiert, bin aber noch nicht so flink im 
löten ;) Bauteile hätte ich zwar alle hier... wie schon gesagt: im 
Semptember USBPROG-51 bauen

von Wilhelm F. (Gast)


Lesenswert?

Andreas Bachmann schrieb:

> Die noch vertriebenen Demoboards mit dem 80C517A sind
> sau teuer (> 200$).

Man ist aber auch immer zur falschen Zeit am falschen Ort! Hier im 
Markt-Forum wurden sogar schon solche Boards verschenkt. Und zwar dieses 
Jahr. Viele Leute brauchen sie heute nicht mehr.

Im FH-Labor wurden vor einigen Jahren noch etwa 20-30 Boards mit 80C535 
verschrottet, die erst 2 Jahre vorher angeschafft wurden. 
Professoren-Wechsel. Der Neue machte nichts mit 8051, sondern PIC und 
ARM.

Ja, mein Opto-Net-Mini kostete mich mit allem drum und dran auch gut 
200DM bzw. 100€. Fertig gab es sie für 400DM, entsprechend 200€. Das 
entspricht etwa deiner Preisangabe.

Alleine nur der 80C517A kostete mich Ende der 1990-er Jahre bei Segor 
48DM, entsprechend 24€. Später fielen sie dann aber mal rapide. Den 
80C535 bekam man um 2000 herum schon mal für 10DM, entsprechend 5€.

Der 80C535 bzw. 80C515 ist der kleinere Bruder des 80C517.

von Andreas B. (te-bachi)


Angehängte Dateien:

Lesenswert?

Um auf der Sicheren Seite zu sein, habe ich noch Jumpers hinzugefügt und 
den Zugang zu einem externen Memory ermöglich.

von Carlos (Gast)


Lesenswert?

Um einen externen Speicher hinzuzufügen benötigst Du aber auf jeden Fall 
noch ein externes Latch (74xx573) am Port P0, um Daten und Adressen zu 
trennen.

Carlos

von ET-Tutorials (Gast)


Lesenswert?

Andreas,
ich habe heute die Ankündigung zum 2. Teil meines µC Kurses gepostet.
Da wird es genau um den 80C51 gehen.
Vielleicht guckst Du Dir das Video mal an.
http://et-tutorials.de/4313/ubersicht-zum-8051-mikrocontroller-kurs/

von Andreas B. (te-bachi)


Angehängte Dateien:

Lesenswert?

Carlos schrieb
> Um einen externen Speicher hinzuzufügen benötigst Du aber auf jeden Fall
> noch ein externes Latch (74xx573) am Port P0, um Daten und Adressen zu
> trennen.
Ja, natürlich... habe ein gutes PDF gefunden:

Ab Seite 50:
http://www.umel.feec.vutbr.cz/alspedit/description...

Wenn ich externes Memory verwenden möchte, dann kommt es auf ein
weiteres Board. Oder... hmmm... soll ichs auf mein Main-Demoboard tun?

von Strubi (Gast)


Lesenswert?

Moin,

Kleine Anmerkung: Die meines Wissens billigsten 8051-Boards sind die 
AX206 basierenden digitalen Fotorähmchen (erhältlich bei Reichelt, 
Pearl, DealExtreme, usw.). Die meisten dieser Teile haben ganz adäquate 
TFT-Displays. Weiterführende Infos u. Links zum Entwicklungssystem: 
http://tech.section5.ch/news/?p=77

Ja, und tot sind die 8051 lange noch nicht und werden es auch so bald 
nicht sein. Und um einen Einstieg in Assembler zu bekommen, sind sie 
gerade richtig - und diesbezüglich ist es auch vollkommen egal, auf 
welcher Plattform man lernt. Ich finde es eher beklagenswert und im 
Embedded Bereich sogar einen "type mismatch", dass kaum ein Informatiker 
heute noch Assembler lernt.

von Carlos (Gast)


Lesenswert?

Hallo Andreas,
wenn Du Dich mit dem CC03er anfreunden kannst, brauchst Du keinen 
externen Programmspeicher mehr, denn der hat 64 kByte ON-Chip (mehr geht 
beim 8051er ohne Trickschaltungen nicht) und 2 kByte Datenspeicher 
ON-Chip.
Das reicht dicke für ein Experimentalboard und Du brauchst Dir um 
Speichererweiterungen keine Gedanken mehr zu machen.

Carlos

von Andreas B. (te-bachi)


Lesenswert?

> Kleine Anmerkung: Die meines Wissens billigsten 8051-Boards sind die
> AX206 basierenden digitalen Fotorähmchen (erhältlich bei Reichelt,
> Pearl, DealExtreme, usw.). Die meisten dieser Teile haben ganz adäquate
> TFT-Displays. Weiterführende Infos u. Links zum Entwicklungssystem:
> http://tech.section5.ch/news/?p=77
Bin Schweizer. Da kostet es MINDESTENS doppelt oder sogar bis zu 10-fach 
soviel ;-(

> Ja, und tot sind die 8051 lange noch nicht und werden es auch so bald
> nicht sein. Und um einen Einstieg in Assembler zu bekommen, sind sie
> gerade richtig - und diesbezüglich ist es auch vollkommen egal, auf
> welcher Plattform man lernt. Ich finde es eher beklagenswert und im
> Embedded Bereich sogar einen "type mismatch", dass kaum ein Informatiker
> heute noch Assembler lernt.
Naja... wir Schweizer hatten es bei der Lehre wie auch an der FH ;)

von Andreas B. (te-bachi)


Lesenswert?

> wenn Du Dich mit dem CC03er anfreunden kannst, brauchst Du keinen
> externen Programmspeicher mehr, denn der hat 64 kByte ON-Chip (mehr geht
> beim 8051er ohne Trickschaltungen nicht) und 2 kByte Datenspeicher
> ON-Chip.
> Das reicht dicke für ein Experimentalboard und Du brauchst Dir um
> Speichererweiterungen keine Gedanken mehr zu machen.
Der AT89C51ED2 hat die genau gleichen internen Dinge: Flash 64kByte, RAM 
1792 Byte und EEPROM 2kByte

von Carlos (Gast)


Lesenswert?

OK Andreas,
so genau kannte ich die Daten Deines 8051ers nicht.
In diesem Falle würde ich bei einem ersten einfachen Experimental-Board 
auf die externe Erweiterung des Datenspeichers ganz verzichten.
Mit den knapp 1,7 kByte RAM kommst Du gut aus.
Beim zweiten Entwurf eines Boards kommen mit Sicherheit noch mehr 
Wünsche hinzu und dann kannst Du überlegen, ob auch der Datenspeicher 
erweitert werden sollte.

Carlos

von Jobst M. (jobstens-de)


Angehängte Dateien:

Lesenswert?

Andreas Bachmann schrieb:
> Wie kann ich auf das externe Memory zugreifen? So wies aussieht, kann
> ich 16 Bit adressieren: 64 kB externes RAM

64kB RAM + 64kB ROM


Andreas Bachmann schrieb:
> Da ich noch nie einen MAX232 benutzt habe, kann es sein, dass
> ich etwas falsch angeschlossen habe...

Viele Leute setzen den Kondensator an Pin 2 wie in Deiner Schaltung 
gegen Vcc. Das halte ich für unelegant. Bei einem Fehler kann negatives 
Potenzial an diesem liegen.

In dem zweiten pdf sind die Kondensatoren an V+ und V- auch noch 
verpolt.

Andreas Bachmann schrieb:
> Wie kann ich mit Assembler bzw. C über externen Bus zugreifen?

Mit MOVX (RAM) und MOVC (ROM)

Andreas Bachmann schrieb:
> Carlos schrieb
>> Um einen externen Speicher hinzuzufügen benötigst Du aber auf jeden Fall
>> noch ein externes Latch (74xx573) am Port P0, um Daten und Adressen zu
>> trennen.
> Ja, natürlich... habe ein gutes PDF gefunden:

Das geht genau wie beim 80c517 - nur die Pin-Zuordnung ändert sich evtl. 
Siehe Bild aus Siemens 80c517 datasheet.


Gruß

Jobst

von Havard Tech (Gast)


Lesenswert?

Joachim ... schrieb:
> Ach Gottchen, was für n altes Zeug. Klar, 8051 kann man unterrichten,
> aber da braucht man sich nicht wundern, wenn Deutschland immer weiter
> zurückfällt.
Tja Joachim, und was schlägst du vor, was ist zukunftsweisend, was hat 
länger Bestand als ein 8051?
Zum Lernen ist es doch völlig egal auf welcher Plattform man arbeitet.
*** Kopfschüttel ***


Wilhelm Ferkes schrieb:
> Der 80C517A hat
> nur den 8051-Core, und all dessen Funktionalitäten, z.B. die ersten 4
> I/O-Ports. Aber sonst noch eine ganze Menge integrierte Peripherie.
Genau, und die Teile gelten nur für diesen Chip und sind umständlich zu 
konfigirieren. Die neuen Atmels sind da besser geeignet. Die sind auch 
statisch und können im echten singlestep betreiben werden. Die gibt es 
auch im PLCC für 1-2€.

von Carsten W. (eagle38106)


Angehängte Dateien:

Lesenswert?

Na, da schmeiß' ich doch mal mein EVAL-Board Design von 2004 in den 
Ring. Das Board hat mir gute Dienste geleistet. Inzwischen bin ich aber 
auch komplett auf AVR umgestiegen.

von Matthias K. (matthiask)


Lesenswert?

Havard Tech schrieb:
> Joachim ... schrieb:
>> Ach Gottchen, was für n altes Zeug. Klar, 8051 kann man unterrichten,
>> aber da braucht man sich nicht wundern, wenn Deutschland immer weiter
>> zurückfällt.

Wer den 8051 als das Arbeitspferd der Industrie beherscht kommt später 
auch mit allen anderen Baureihen klar. Du machst bestimmt keinen Fehler. 
Und für die Jobsuche ist er auch von Vorteil, den kennen sogar die 
Personaler...

von Andreas B. (te-bachi)


Lesenswert?

Jobst M. schrieb
>> Da ich noch nie einen MAX232 benutzt habe, kann es sein, dass
>> ich etwas falsch angeschlossen habe...
>
> Viele Leute setzen den Kondensator an Pin 2 wie in Deiner Schaltung
> gegen Vcc. Das halte ich für unelegant. Bei einem Fehler kann negatives
> Potenzial an diesem liegen.
Was wäre dann dein Vorschlag? Wo würdest du Pin 2 anschliessen?

> In dem zweiten pdf sind die Kondensatoren an V+ und V- auch noch
> verpolt.
Oh... vielen Dank! Hätte es nicht bemerkt, bis es dann beim Praxistest 
nicht funktioniert hätte.
Habs noch quergeprüft mit 
http://www.mikrocontroller.net/articles/AVR-Tutorial:_UART

>> Wie kann ich mit Assembler bzw. C über externen Bus zugreifen?
>
> Mit MOVX (RAM) und MOVC (ROM)
MOVX/MOVC nur mit dem DPTR oder auch immediate/direkt?

Carsten Wille schrieb
> Na, da schmeiß' ich doch mal mein EVAL-Board Design von 2004 in den
> Ring. Das Board hat mir gute Dienste geleistet. Inzwischen bin ich aber
> auch komplett auf AVR umgestiegen.
Das ist ja mal ein EVAL-Board! Hab im moment kein Eagle und designe 
meins in KiCad. Hat das Ethernet? Oder USB?

von Wilhelm F. (Gast)


Lesenswert?

Havard Tech schrieb:
> Wilhelm Ferkes schrieb:
>> Der 80C517A hat
>> nur den 8051-Core, und all dessen Funktionalitäten, z.B. die ersten 4
>> I/O-Ports. Aber sonst noch eine ganze Menge integrierte Peripherie.

> Genau, und die Teile gelten nur für diesen Chip und sind umständlich zu
> konfigirieren. Die neuen Atmels sind da besser geeignet. Die sind auch
> statisch und können im echten singlestep betreiben werden. Die gibt es
> auch im PLCC für 1-2€.

Ach, nee, das finde ich jetzt gar nicht, daß der 80C517A schwierig ist. 
Dazu muß ich aber auch sagen, daß ich nicht nur mit den Datenblättern 
arbeitete, sondern ausgezeichnete Bücher dazu habe. Siemens selbst und 
auch der Otmar-Feger-Verlag brachten in den 1990-er Jahren ausgezeichnet 
gute Buchtutorials heraus. Elektor ebenfalls. Dort findet man alles, von 
Projektmanagement, Softwaremanagement, viele Softwarebeispiele, 
Hardware, Schaltpläne, Konfigurationsbeispiele, Leerplatinen für 
Eval-Boards. Und mit so einem Eval-Board arbeite ich zur Zeit noch 
gerne. Habe mir dort ein Monitor-EPROM konfiguriert, und kann so lange 
Programme ins RAM laden, bis zum Abwinken. Warum sollte ich das alles in 
die Tonne treten?

Den Single Step mache ich mit Software, einen echten per Hardware 
vermißte ich zu keinem Zeitpunkt. Der µC soll in der Anwendung laufen, 
und nicht stehen. Bis zum Idle oder Power Down.

Aber Atmels für 1-2€ mit der gleichen Leistung und gleichen Features, 
das ist natürlich sagenhaft gut. Für einen Euro fand ich sonst gerade 
mal einen PIC12F675, der allerdings keine 8 I/O-Ports hat, keine CCU, 
keine MDU, keine 2 UARTs, und auch keinen externen Bus für 64k ROM und 
RAM.

Mir macht der alte Kram noch Spaß, für viele Anwendungen reichen die 
alten Kisten noch gut. Und um einfach nur die Programmierkenntnisse zu 
vertiefen, sowieso.

von Carsten W. (eagle38106)


Lesenswert?

Andreas Bachmann schrieb:

> Carsten Wille schrieb
>> Na, da schmeiß' ich doch mal mein EVAL-Board Design von 2004 in den
>> Ring. Das Board hat mir gute Dienste geleistet. Inzwischen bin ich aber
>> auch komplett auf AVR umgestiegen.
> Das ist ja mal ein EVAL-Board! Hab im moment kein Eagle und designe
> meins in KiCad. Hat das Ethernet? Oder USB?

Das aufgesetzte Modul ist ein Ethernet Modul von Wiznet.

von Carsten W. (eagle38106)


Angehängte Dateien:

Lesenswert?

Und hier noch auf besonderen Wunsch der Schaltplan als PDF.
Carsten

von 8051 (Gast)


Lesenswert?

Vielen Dank Carsten! Sehr nette Geste.

von Jobst M. (jobstens-de)


Lesenswert?

Andreas Bachmann schrieb:
> Was wäre dann dein Vorschlag? Wo würdest du Pin 2 anschliessen?

Auch an einen Kondensator - aber gegen Masse.

Andreas Bachmann schrieb:
> MOVX/MOVC nur mit dem DPTR oder auch immediate/direkt?

Ohne DPTR geht es nicht. Und das ist ja quasi direkt.


Gruß

Jobst

von Andreas B. (te-bachi)


Lesenswert?

Jobst M. schrieb
>> MOVX/MOVC nur mit dem DPTR oder auch immediate/direkt?
> Ohne DPTR geht es nicht. Und das ist ja quasi direkt.
Naja... über DPTR ist indirekt über den DPTR

MOV DPTR, #0FA02h
MOVX A, @DPTR

Carsten Wille schrieb
> Und hier noch auf besonderen Wunsch der Schaltplan als PDF.
Vielen Dank auch von mir. Kleine Frage bezüglich Stückliste.
Kannst du mein Mapping auf Reichelt nachvollziehen:
LGN971 -> SMD-LED 1206 GN
LHN974 -> SMD-LED 1206 RT
LM2940CT50 -> LM 2940 CT5
MAX701CSA -> MAX 700 CSA (etwas mehr als gefordert)
NC7S00 -> SMD 4011 (ich denke, andere PIN-Belegung)
LM1117MP-3.3 -> LM 1117 T3,3 (nicht SMD)
74HC573D -> 74HC 573
PCF8574T -> PCF 8574 T
AT24C02S -> ST 24C02 MN (EEPROM)
MAX208ECWG -> MAX 208 CWG
ISS62C256-70-T -> 62256-70 M (SRAM)
BSS138 -> BSS 138 SMD
BSS84 -> BSS 84P SMD

Kühlkörper RS#263-251 -> V PR32/25,4-MC
Wo bekommt man RS-Kühlkörper? Bei Reichelt, Farnell und Conrad nicht.

IIM7010A -> ?
Ich habe ein WIZnet W5100 Rev 1.0. Ist da auch ein IIM7010A integriert?

von Carsten W. (eagle38106)


Lesenswert?

Andreas Bachmann schrieb:

> Carsten Wille schrieb
>> Und hier noch auf besonderen Wunsch der Schaltplan als PDF.
> Vielen Dank auch von mir. Kleine Frage bezüglich Stückliste.

Kannst du mein Mapping auf Reichelt nachvollziehen:

LGN971 -> SMD-LED 1206 GN  ok
LHN974 -> SMD-LED 1206 RT  ok
LM2940CT50 -> LM 2940 CT5  ok
MAX701CSA -> MAX 700 CSA   geht, wenn Pin 7 auf Masse!
NC7S00                     Farnell #1014131 Muß SOT23-5 Gehäuse sein!
LM1117MP-3.3               Farnell #9778195 SOT-223
74HC573D                   Reichelt SMD HC 573
PCF8574T -> PCF 8574 T     ok
AT24C02S -> ST 24C02 MN    ok
MAX208ECWG -> MAX 208 CWG  ok
ISS62C256-70-T             Farnell #1562911 Gehäuse TSOP28!
BSS138 -> BSS 138 SMD      ok
BSS84 -> BSS 84P SMD       ok

Kühlkörper RS#263-251 -> V PR32/25,4-MC Der paßt nicht 100%
Wo bekommt man RS-Kühlkörper? Bei Reichelt, Farnell und Conrad nicht.
RS aka RS-Online: 
http://de.rs-online.com/web/p/products/0263251/?searchTerm=263-251

IIM7010A -> ?  Da könnte das WIZ810MJ Netzwerk-Modul reinpassen. Musst 
Du Dir mal beide Datenblätter von http://www.wiznet.co.kr herunterladen 
und die Pinbelegung der Module vergleichen. Das IIM7010A ist halt der 
erste Version von Wiznet gewesen, bei der PHY und MAC noch in zwei 
getrennten Gehäusen saßen.

http://datasheets.maxim-ic.com/en/ds/MAX700-MAX702.pdf (Seite 5 Abb. 3)

Als Studi solltest Du ja keine Probleme haben, mit I-Bescheinigung bei 
Farnell zu bestellen.

Gruß
Carsten

von Dominik B. (dbollivo)


Lesenswert?

Hallo te-bachi,

hab' Deine Anfrage leider eben erst gesehen:

Wegen meiner "ISP-Schaltung": Ich hab' damals den C-Compiler von 
Wickenhäuser zusammen mit dem Flexgate III (Webserver auf Basis 
AT89C51ED2) gekauft und daraus mein Demo-Board "abgestrippt". Ich hatte 
einfach die Beschaltung der RS232/ISP übernommen damit die Demos die 
beim Compiler dabei waren direkt programmiert werden konnten. Das ist 
aber alles kein Problem, man kann in Atmel/FLIP konfigurieren, ob die 
Reset/Bootloader-Leitungen per RS232 mit HIGH oder LOW-Pegel arbeiten.
Zur Programmierung über USB verwende ich privat übrigens einen trivialen 
USB/RS232-Adapter (Chipsatz von Prolific) den man an jeder Ecke kaufen 
kann - funktioniert für meine Zwecke sehr gut.

Grüße,
Dominik

von Matthias (Gast)


Lesenswert?

Der 80C517A ist nicht ROHS-konform soweit ich weiss. Aber gut, spielt ja 
keine Rolle beim Basteln.
Am elegantesten wäre wohl für den ED2 das Interface fuer das Atmel-OCD 
einzudesignen. Dann kann man auch debuggen. Flashen ist ja nicht alles.

von Joerg L. (Firma: 100nF 0603 X7R) (joergl)


Lesenswert?

Dominik Bollivo schrieb:
> ...Ich hab' damals den C-Compiler von
> Wickenhäuser zusammen mit dem Flexgate III (Webserver auf Basis
> AT89C51ED2) gekauft ...

Hallo Dominik,

die Doku zu dem Flexgate 3 würde mich interessieren (speziell der 
Schaltplan).

Die Website von Herrn Wickenhäuser ist leider seit Jahren ziemlich 
verwaist und Dokus zum Flexgate findet man da leider keine. Auch der 
Kauf des Boards scheint nicht mehr möglich zu sein.

Danke & Gruß,
Jörg

von Dominik B. (dbollivo)


Lesenswert?

Hallo Jörg,

die Doku zu FG3 nebst Schaltplan war seinerzeit bereits beim Download 
der Demoversion mit dabei (PDF) - ich bin damals über diese Dokus 
überhaupt erst auf das Flexgate aufmerksam geworden.
Vor einigen Monaten habe ich das Orginaldesign überarbeitet und bin auf 
einen AT89C51ED2 mit 68pol. PLCC-Gehäuse umgezogen.
Zusätzlich wurde noch ein neueres Ethernetfrontend (DM9000A anstelle des 
AM9000AEP) eindesigned (neueres IC, kompaktere Bauweise) und ein 
32kB-Chip fix mit an den Bus gehängt.
Die Quellen des Felxgate 3 mussten wegen des neuen Ethernetchips noch 
etwas angepasst werden. Schade eigentlich, daß das Flexgate nicht mehr 
zu bekommen ist, ist zwar etwas gemächlich (klar, der ED2 ist ein 
Arbeitspferd und kein (Web-)Rennwagen ;-) funktioniert aber ansonsten 
tadellos.
Die Quellen für den Flexgate 3 Webserver sind meines wissens bei der 
Demo bereits komplett mit dabei und lassen sich damit auch komplett 
übersetzen.
Sollte Interesse bestehen kann ich ja mal SP und LP (Eagle) meiner 
überarbeiteten Version 'rauskramen.
Eine besonders dolle Doku darüber hinaus gibt es aber ansonsten 
meinerseits (noch) nicht ;-)

Viele Grüße,

Dominik

von Joerg L. (Firma: 100nF 0603 X7R) (joergl)


Lesenswert?

Hallo Dominik,

habs gefunden, DANKE für den Tipp.
Man muß unter uC51\src\ED2 suchen, nicht unter "Flexgate"... dort ist 
nur das Flexgate 1 zu finden.

Viele Grüße,
Jörg

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.