Hallo, ich habe exakt die Schaltung aus dem Tutorial nachgebaut (http://www.mikrocontroller.net/articles/AVR-Tutorial:_UART). Außerdem habe ich ein kleins Bsp. Programm im AVR. Wenn ich ein Terminal am PC starte empfange ich allerdings keinerlei Daten, ich habe dann einfach mal die RX/TX vom PC direkt an den AVR angeschlossen, dort wird zumindest etwas übertragen (natürlich nicht lesbar wegen der Spannung(?), es sind nur ASCI Zeichen zu sehen). Ich weiß grade nicht wirklich weiter, hat jemand eine Idee oder einen Hinweis,´was ich noch überprüfen kann? Gruß Sebastian
"wegen der Spannung(?)" Vor allem wegen invertiert. Hoffen wir dass die paar mA die ein RS232-Treiber liefert den Schutzdioden vom AVR nicht den Rest gegeben haben... Hast Du die generierten Spannungen am MAX232 mal nachgemessen? Einfach mal logisch 0/logisch 1 bzw plus und minus 12V an die Eingänge gelegt und gemessen was auf der anderen Seite rauskommt?
Also ich habe es am aktuellen Bsp. mal nachgemessen: Spannung an T1IN: 3,72V Spannung an T1OUT: -8,54V Spannung an R1OUT: 5,05V Spannung an R1IN: 0,00V
Nimm mal den Mega aus dem Sockel und mach statt dessen eine Drahtbrücke rein, die den Tx Pin mit dem Rx Pin verbindet (aus dem Mega-Datenblatt raussuchen welche Pins im Sockel das sind). Wenn du auf dem PC tippst, musst du alles was du tippst, auch wieder im Terminal sehen. gegentest: Drahtbrücke raus - dann muss das Echo aufhören. Wenn dem nicht so ist, dann stimmt in deiner Verkabelung was nicht. Sehr wahrscheinlich ist dann einfach nur das USART-Kabel nicht richtig gekreuzt. Nimm die Brücke wieder aus dem Sockel. Eine LED, die nach Masse verschaltet wird (+330 Ohm Vorwiderstand) ist ein ganz brauchbares Debugwerkzeug. Leg einen Stein auf die PC-Tastatur und dann kannst du das vom PC gesendete Signal verfolgen. Die LED zeigt dir das durch heftiges blinken auf einer der Leitungen. Die muss beim Max am Rx1IN Eingang ankommen, geht durch den Max durch zum Sockel. Überall da musst du die LED blinken sehen. Wenn das so ist, dann setzt du die Brücke wieder ein und verfolgst dann das Signal wieder zurück zum Max, durch den Max durch und über das Kabel bis zum PC. Wenn du diesen Zustand erreicht hast, dann ist zumindest das Kabel samt Max-Beschaltung mal durchgetestet. Aber dieser 'Brücke in Sockel' und auf dem PC tippen muss erst mal einwandfrei funktionieren - damit ist die Hardware soweit getestet.
Wenn sich die Spannung an T1IN verringert, dann wird an T1OUT nicht mehr invertiert, das ist aber nicht normal oder? Spannung an T1IN: 2,13V Spannung an T1OUT: 1,24V
Deine Spannungen klingen für mich allerdings eher als ob das
> ich habe exakt die Schaltung aus dem Tutorial nachgebaut
nicht der Realität entspricht. Noch mal die Schaltung prüfen!
Mach mal bitte ein Foto von Deinem Aufbau (Bildformate berucksichtigen).
Hallo, also der Aufbau sieht sehr chaotisch aus :/ Habe das eben mal mit der Brücke probiert, mit Echo meinst du aber, ich drück auf A das A erscheint im Terminal und dann gleich noch mal oder meinst du ich drücke auf A und es erschein einmal? Auf dem Bild ist von myAvr ein Testboard zu sehen, die Pins links am µC sind von oben nach unten TxD - RxD. Ich wusste nicht wie ich es besser ablichten sollte.
Hallo, danke für die vielen Hinweise und auch den Tip mit der LED! Ich habe jetzt den Fehler gefunden, ist mir ja echt peinlich, aber ich habe vergessen Pin5 vom Sub-D9 auf GND zu legen :/
Hat auch was gutes - wenn dir später jemand die differentielle Datenübertragung erklären muss wird er es einfacher haben :)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.