mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik RS232 Pegelproblem Desktop/Notebook mit atmega


Autor: Champus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

ich habe ein problem, bei dem ich einfach nicht weiter weiss. vielleicht 
ist es sogar ein dau problem :-(

zum problem:
ich habe einen atmega32 an einem max232 haengen. dieser tauscht daten 
mit einem notebook aus. alles selbstgeschriebene soft, alles ok. zur 
ueberwachung des datenverkehrs habe ich zwischen dem max232 und dem 
atmega noch 2 leuchtdioden. kein datenverkehr, led aus. soweit, so gut.

nun habe ich den atmega an die serielle schnittstelle eines desktop pc 
angeschlossen und die empfangsled des atmega brennt permanent. ich 
empfange zwar noch einwandfrei vom controller, aber der controller 
empfaengt nichts mehr.

nun habe ich nochmal die spezifikation fuer die rs232 gelesen und mir 
fiel auf, das im ruhezustand (space?) ca. +10v anliegen. beim notebook 
jedoch nichts.

ich weiss jetzt ueberhaupt nicht mehr, wo ich ansetzen soll.

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Champus,

> zur ueberwachung des datenverkehrs
> habe ich zwischen dem max232 und dem
> atmega noch 2 leuchtdioden.

wie ?

Gruss Otto

Autor: Sonic (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zum Pegel:
TX-Pin: ca. -8V im Ruhezustand (der MAX232 invertiert den Pegel, 
USART-RX-Pin vom mega im Ruhezustand high => Ausgang MAX => ca. -8V)
RX-Pin: nichts, da Eingang.
Es muss immer ein Pin mit Potential (i.d.R. -8V) mit dem Gegenüber mit 
0V verbunden werden, sonst ist TX auf TX und RX auf RX und nix geht.

Autor: Champus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,
danke fuer eure schnellen antworten. zur led-beschaltung. led+ haengt an 
5v und mit widerstand an der datenleitung. bei low pegel geht sie also 
an.

jetzt wieder mein verstaendnis problem. der atmega gibt auf der 
tx-leitung im ruhezustand high aus. led bleibt aus. ueber den max232 
erfolgt die invertierung auf ca. -8.5v. stimmt auch, habe ich auch so 
gemessen.
daraus folgt, dass vom pc(desktop) im ruhezustand auch ca. -8.5v am 
max232 des atmega (rx) ankommen muessten. tun sie aber nicht. es kommen 
fast +10v an. deshalb geht auch die rx-led an.
daraus folgere ich, das die tx-seite des pc defekt sein muesste.

alles sehr bedenklich.

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Champus,

verbinde PC-seitig RxD mit TxD, wenn Du
dann sendest (Hyperterminal) und das
Geschriebene 1:1 zurückkommt, müsste
der PC in Ordnung sein.

Notfalls kopple 2 PC zum testen.

Hast Du Dich evtl. nur beim Anschluss
vertan?

Gruss Otto

Autor: Sonic (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mit dem Terminalprogramm wollte ich auch grade vorschlagen:
http://www.der-hammer.info/terminal/index.htm
das Teil ist Freeware und echt klasse! Probier's mal aus.
Starte einfach mal den Rechner neu und miss OHNE gestartete Software den 
Pegel. Mit dem hterm kannste dann experimentieren (Oszi und so).

Autor: Champus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,
ich arbeite unter linux :-)
der pc hat 2 serielle schnittstellen. ich habe es mit beiden getestet 
und bei beiden das selbe ergebnis. ich habe jeweils die richtige 
schnittstelle gewaehlt. /dev/ttyS0 und /dev/ttyS1. sonst haette ich auch 
keine daten empfangen koennen.
wenn ich das kabel (null-modem) zwischen /dev/ttyS0 und /dev/ttyS1 
schalte funktioniert alles (mittels kleinem testprogramm).
ich habe natuerlich auch schon 3 verschiedene kabel benutzt ->keine 
aenderung

ich komme mir wie ein totaler anfaenger vor.

nochmal zu meinem posting weiter oben. am rx des max232(atmega) messe 
ich +8.5v. es muessten doch aber -8.5v sein (ruhezustand).

Autor: Sonic (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du am RX was messen kannst hast du RX und TX vertauscht! Der RX 
muss 0V haben.

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Champus,

kontrolliere alle Verbindungen noch mal.
Ziehe dann mal den Controller aus dem Sockel
und verbinde RxD und TxD - Pin.

Geht dann immer noch nichts, ist Dein MAX
oder der PC falsch angeschlossen.

Geht es dann, ist evtl Rx und Tx am Atmel
vertauscht.

Gruss Otto

Autor: Champus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

nur fuers protokoll

das problem ist geloest. es sind tatsaechlich beide seriellen 
schnittstellen am pc defekt. eigentlich unglaublich. mit einem anderen 
pc klappt alles. merkwuerdig bleibt nur, warum ein nullmodem kabel ueber 
beide seriellen schnittstellen funktinoiert. aber egal.

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.