Forum: Mikrocontroller und Digitale Elektronik Senden an UART klappt nicht


von Stefan Wagner (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich versuche gerade ein C-Programm von Harald Leitner bei mir zum
Laufen zu bringen.
Es soll Zeichen vom PC empfangen, auf einem Port ausgeben und an den PC
zurück senden.
Das Empfangen und Senden wird in einer Interrupt-Routine gemacht.

Allerdings funktioniert entweder das Programm nicht oder ich habe mit
dem Terminalprogramm etwas falsch gemacht. Beides ist neu für mich.
Als Terminalprogramm habe ich Hyperterminal eingesetzt und folgende
Parameter eingestellt: 9600 Baud, ein Stop-Bit, kein Parity.
Damit konnte ich die Ausgaben eines anderen AVR-Programm, das nur Daten
gesendet hat, empfangen.
Die Senderoutine für den AVR 8535 ist dieselbe.
Es ist nur die Empfangsroutine hinzu gekommen.

Das AVR-Programm ist im Anhang.
Das Programm stammt aus dem Tutorial (von) haraleit.pdf,
Ein Link auf das Programm findet sich auf der Seite
http://www.linuxfocus.org/English/March2002/article231.shtml

Kann mir vielleicht jemand weiter helfen?

von Danny (Gast)


Angehängte Dateien:

Lesenswert?

Welches System? Hyper-Terminal? XP? Dann kann sein das es nicht
funktioniert, hat es bei mir auch nicht. Versuch mal das im Anhang....

von Stefan Wagner (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Danny,

vielen Dank für Deine Antwort und das Terminal-Programm!

Leider hat es noch nicht geklappt.
Inzwischen habe ich mal ein Basisc-Programm "serialinput.bas" (siehe
Anhang), das bei der Testversion des Bascom-Compilers dabei ist, in den
AVR geladen.
Wenn ich das AVR-Board aus und wieder einschalte, dann sehe ich an dem
Terminalprogramm von Dir den name, den der AVR sendet.
Das ist soweit in Ordnung.
Will ich einen String an den AVR senden, kann ich scheinbar machen, was
ich will, es kommen nach einer Weile immer irgendwelche Hyroglyphen. Das
Programm läuft in einer Schleife und gibt mir nach ca. 10 Sekunden
ungefähr 34 Zeichen aus. Das geht dann so fort.

Dazu habe ich den Text in die Eingabezeile folgendermaßen eingegeben
und Return gedrückt:
Hallo <CR>
Hallo <CR><LF>
Hallo <LF>
Zwischendrin habe ich den AVR zurück gesetzt.

Es ist immer dasselbe :-(

Ich habe überlegt, ob es vielleicht ein Hardwareproblem ist.
Das Kabel ist in Ordnung. An der Platine konnte ich auch keinen Fehler
feststellen.
Vielleicht liegt es am Baustein 232.

Gruß von Stefan

von Stefan Wagner (Gast)


Lesenswert?

Hallo,

ich will nur kurz mitteilen, dass ich habe den Fehler gefunden habe.
Jetzt kann ich mit dem AVR-Board auch etwas empfangen und zurück
schicken. :-))
Es lag an einer Lötstelle um den MAX232.

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.