www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik serielle Schnittstelle


Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend,

ich möchte eine Verbindung zwischen meinem 8051er und einem Touch Pad 
herstellen. Dafür möchte ich die serielle Schnittstelle nutzen. Im 
Datenblatt des Touch Pad´s steht, dass die Baudrate 9600 sein soll. Also 
habe ich diese auch auf 9600Bd konfiguriert.
Die Kommunikation soll über die Portpins erfolgen. Die Pin´s (Tx,Rx) der 
seriellen Schnittstelle habe ich also auf die Portpins geroutet.
Leider funktioniert es nicht und ich habe kein Oscilloskop und kann die 
signale nicht überprüfen.

Meine eigentlichen Fragen:

1. Wie müssen die Pin´s konfiguriert sein(push pull, open drain)?

2. Ist für das Touchpad grundsätzlich die selbe Konfiguration als für 
die Tastatur zu verwenden?

3. Kann ich die Kummunikation der seriellen Schnittstelle mit dem 
Multimeter überprüfen?

Liebe Grüße
Jens

Autor: Zwölf Mal Acht (hacky)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ohne Scope wird's schwierig...

Autor: gk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist vielleicht ein Pegelwandler notwendig(MAX 232..) ?

Autor: Floh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens schrieb:
> 1. Wie müssen die Pin´s konfiguriert sein(push pull, open drain)?
Tx als Ausgang
Rx als Eingang

> 2. Ist für das Touchpad grundsätzlich die selbe Konfiguration als für
> die Tastatur zu verwenden?
 -> siehe Datenblatt des Touchpads. Übrigens kenn ich keine Tastatur mit 
seriellem Port (Rs232) ?

> 3. Kann ich die Kummunikation der seriellen Schnittstelle mit dem
> Multimeter überprüfen?
Damit kannst du höchstens prüfen, ob was geschickt wird, aber nicht was.
Für genaueres muss ein DSO her.
:-)

Autor: gk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mess mal die Spannung am Sendeausgang des Touchpad. Falls die
Spannung negativ ist brauchst Du einen Pegelwandler.

gk

Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie wärs wenn du mit allen Infos rausrückst? Welcher Controller, welches 
Touchpad, etc.?

> ich möchte eine Verbindung zwischen meinem 8051er und einem Touch Pad
> herstellen.
> ...
> 1. Wie müssen die Pin´s konfiguriert sein(push pull, open drain)?
Hört sich nach nem SiLabs Controller an, kann das sein?

> 2. Ist für das Touchpad grundsätzlich die selbe Konfiguration als für
> die Tastatur zu verwenden?
Du meinst die normale PS2-Tastatur? Nur dann, wenn die 
Touchpad-Schnittstelle synchron, also aus einer Clock- und einer 
bidirektionalen Datenleitung besteht. Da du aber sagst, dass das TP 
9600Bd erwartet, bezweifel ich, dass es wie ne normale Tastatur 
angebunden ist. Was hat das TP für'n Anschluss?

> 3. Kann ich die Kummunikation der seriellen Schnittstelle mit dem
> Multimeter überprüfen?
Ja, aber nur ob das Senden einer Schnittstelle an sich geht, die genaue 
Geschwindigkeit kannst du nicht ermitteln.

Ralf

Autor: Reinhard Kern (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Floh schrieb:
>  -> siehe Datenblatt des Touchpads. Übrigens kenn ich keine Tastatur mit
> seriellem Port (Rs232) ?

Hallo,

früher waren die alle so, aber da warst du möglicherweise noch garnicht 
geboren. Ich meine vor der Erfindung des PC. Ich hab noch welche da von 
Cherry.

Zum Test: eine LED an TxD würde beim Senden zucken, bei 9600 Baud 
allerdings leider ganz kurz. Stellt man testweise 110 oder 300 Baud ein, 
sieht man sie deutlich flackern. Wenns irgend geht, bau ich auf meinen 
Platinen immer LEDs an TxD und RxD ein.

Gruss Reinhard

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe leider im Moment wenig Zeit mich mit meinem mikrocontroller zu 
beschäftigen. hier ist das datenblatt für das touch pad:

http://www.steitec.net/media/products/024515700127...

wenn ich das touchpad über die serielle verbindung betreiben möchte, 
brauche ich dann den Pegelwandler(Max232)?

Mfg
Jens

Autor: gk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nein, da TTL Pegel

gk

Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> wenn ich das touchpad über die serielle verbindung betreiben möchte,
> brauche ich dann den Pegelwandler(Max232)?
Kommt drauf an, welche serielle Verbindung du meinst. Das Board selbst 
hat laut deinem Datenblatt (hast du's nicht gelesen? :)) keine 
Pegelkonvertierung. Das heisst, wenn du es an eine echte RS232 
anschließen willst, brauchst du einen Pegelwandler.
Willst du es mit einem µC verbinden, dessen IO-Spannung 5V beträgt, 
brauchst du keinen Wandler, und wenn der µC mit einer kleineren 
Versorgungsspannung läuft, und keine 5V-kompatiblen IOs hat, brauchst du 
ne Konvertierung VCC<->5V.

Ralf

Autor: NurEinGast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Jens

> habe leider im Moment wenig Zeit mich mit
> meinem mikrocontroller zu beschäftigen.

Dann würde ich doch vorschlagen, wir warten einfach ab bis Du wieder 
Zeit findest Dich selbst ernsthaft mit Deinem Projekt zu beschäftigen 
und Du wieder die Zeit findest die Datenblätter selbst mit Ruhe 
durchlesen zu können.

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Ralf,

mit solchen Antworten kann man was anfangen. Also ich habe den Port 
P0.4(Tx) am µP auf Push pull konfiguriert(also messe ich auf diesem PIN 
5V).
Weiters habe ich meine Tastatur mit dem µP direkt mit der seriellen 
Schnittstelle verbunden.
Wenn ich nun ein Zeichen mit dem Touch Pad eingebe, so wird es nicht auf 
dem Bildschirm ausgegeben. Mit der Tastatur über die serielle 
Schnittstelle funktioniert es einwandfrei.
Den PIN P0.4 habe ich mit der seriellen Schnittstelle geroutet.

MfG
Jens

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nun habe ich den kompletten Port0 auf analogen Eingang konfiguriert und 
siehe da es werden Zeichen angezeigt. Jedoch werden die falschen Zeichen 
angezeigt(vor jeder Zahl schreibt er ein R) und er überschreibt das 
vorherig eingegebene zeichen immer.(kein Abstand)
Dies funktioniert nur, wenn ich die serielle Schnittstelle vom PC auch 
angeschlossen habe. Warum?

MfG
Jens

Autor: touchi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jens(Gast)

wie wäre es wenn du erstmal mit Hyperterminal und PC versuchen würdest
ob dein Touchpad überhaupt geht.
Dazu kannst du TX direkt an pin 2 einer 9 Pol. Ser. Schnittstelle
des PC verbinden. RX nicht Anschliessen.

Parameter 9600 8N1 / kein Handshake

Wenn die Funktion Überprüft ist dann machst du weiter.

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo touchi,

dies habe ich gerade gestestet und es funktioniert.

Nun habe ich das Touch Pad an den Port des µC angeschlossen, jedoch  ich 
das Zeichen direkt an die serielle Schnittstelle gesendet. Also der Akku 
und das Programm wird ignoriert(es ist egal welches Programm im µP ist 
er sendet es über den µP direkt an die serielle Schnittstelle)

Als ich das Touch Pad direkt an PIN2 der 9 - poligen Schnittstelle 
geschlossen habe, war die Zeichenausgabe nicht richtig.
Wenn ich die Zeichen über PIN P0.4 an die serielle Schnittstelle sende, 
stimmen zumindest die Zeichen.

MfG
Jens

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.