Forum: Mikrocontroller und Digitale Elektronik parallel port mittels pld und µController ansprechen


von Andreas Müller (Gast)


Lesenswert?

Hi Jungs,

ich hab hier zwar noch nie was geschrieben, aber ich hoffe ich bekomme
trotzdem möglichst viele Antworten.

Also, ich habe einen µController-Board mit dem AT89C51AC3, kein
besonderer aber für simple dinge reichts. Diesen programmier ich über
die RS232 Schnittstelle.
Nun möchte ich mit diesem µController und einem PLD oder FPGA
verschiedene Schnittstellen ansprechen. D.h. Daten werden über die
RS232-Schnittstelle zum Prozessor geleitet, der erkennt an welche
Schnittstelle ich senden möchte und leitet dies an den PLD oder FPGA
weiter.Dieser leitet die Daten über die interne Logik an die
entsprechende Schnittstelle.

Die Schnittstellen sollen: ParallelPort(25polig), RS232, I2C, JTAG

Zuersteinmal soll es für den ParallelPort und die I2C Schnittstelle
funktionieren.

Meine Frage ist nun wie würdet ihr da herangehen? Wie schreibt man
solch ein Protokoll für den µC?

von Andreas M. (spomue)


Angehängte Dateien:

Lesenswert?

Also ich bin jetzt schon einen Schritt weiter.

Der µC sendet die Daten von der RS232 Schnittstelle an den PLD über
einen 8Bit Datenboard. Über einen weiteren 8Bit Datenport wird
entschieden welche Schnittstelle angesprochen werden.

Betrachten wir nur den Parallel Port:

Welche zusätzlich Bausteine brauche ich um senden und empfangen zu
können und welche Bits und Pins benutze ich dazu?
Bei der RS232 Schnittstelle brauchte ich ja auch einen Pegeltreiber wie
den Max233. Was brauche ich bei einem Parallelport?

von Antti L. (truedream)


Lesenswert?

für parllalle ein 5V tolerant PLD, weiter nix.
aber es geht moeglicherweise auch ohne PLD :) direct an mcu

antti

von Andreas M. (spomue)


Lesenswert?

Was heißt das 5 V tollerant? Das ich den PLD mit 5V betreiben muss? Wie
mach ich das mit dem Senden und Enpfangen von Daten über den
ParallelPort?
Ich muss einen PLD verwenden!

von Dirk D. (dirkd)


Lesenswert?

Eine gute Beschreibung zum Parallel-Port findest Du bei

http://www.beyondlogic.org/

eine andere Anlaufstelle ist Jan Axelson

http://www.lvr.com/

der hat das Buch Parallel Port complete geschrieben.

Gruß

     Dirk

von Andreas M. (spomue)


Lesenswert?

Das Problem ist das alle nur über das ansprechen des Druckers reden. Ich
 möchte aber damit programmieren. Gibt es da nich einen Standard oder
eine gewisse allgemeine Pinbelegung?

von Andreas M. (spomue)


Lesenswert?

OK. Hab mich jetzt einwenig belesen. Für den Parallel gibt es einen
Standard der sich IEEE1284 schimpft. Den sogenannten EPP.

Jetzt ist die Farge wie muss ich das Programmieren um von der RS232
Schnittstelle über den Mikrocontroller über den PLD an irgend eine
Schnittstelle Daten zu senden. Mich interessiert vorallem die
Programmierung im µC und im PLD.
Hab ihr da vielleicht eine Ahnung??

von Norbert L. Bodtmann (Gast)


Lesenswert?

Ich bin an dem selben Thema dran:


Protokollaufbau der verschiedenen Port-Varianten:
www.fapo.com/ieee1284.htm

Pin-Belegung und Hardware:
http://www.doc.ic.ac.uk/~ih/doc/par/

Eine Menge durchaus Informatives
 -aber auch professorales "man könnte vielleicht, ich weiß aber nicht 
..."
http://www.phanderson.com

mfg NLB

von Michael U. (Gast)


Lesenswert?

Hallo,

mir ist etwas unklar: Daten werden irgendwohin geschickt oder 
irgendwoher geholt.

Ob der "Transport-"Layer nun Parallelport SP, ECP/EPP, oder I2C oder 
RS232 heißt, hängt ja davon ab, was an der gegenstelle verfügbar ist.

Dazwischen sehe ich wenig Verbindung außer ein wenig Hardware.
I2C, RS232, Parallelport im SP-Mode kann jeder gängige µC in Hard- oder 
Software ohne Probleme. Bei Parallel ECP/EPP wird es schwieriger, vor 
allem ist es aber eine Geschwindigkeitsfrage und eine Frage der 
Gegenstelle, ob es nötig ist.

Gruß aus Berlin
Michael

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.