ATMEGA164p UART Empfangsproblem

OP #583978
Lesenswert?
• ▲
▼
Hallo,


Das Programm (siehe Anhang) empfängt Zeichen über UART, speichert sie in 
einem Buffer und sendet sie gleich wieder raus.

Der Empfang wird in einer Interruptroutine realisiert. Werden Bytes vom 
PC (Terminalprogramm) einzeln gesendet, so gibt es keine Probleme. Wenn 
man aber mehr als 2 Zeichen direkt hintereinander sendet, kommen diese 
im Controller nicht mehr richtig an.

Wenn ich das Zurücksenden im Quellcode auskommentiere und mehrere 
Zeichen direkt hintereinander vom PC zum Controller sende gibt es keine 
Probleme. Ich habe mir den Bufferinhalt im Debugger angesehen. Deshalb 
nehme ich an, dass es etwas mit dem Senden zu tun hat. Aber Senden und 
Empfangen sollten doch aufgrund des vollduplexfähigen UARTS 
"gleichzeitig" möglich sein, oder?!?

Zur Fehlersuche habe ich den Quellcode so weit gekürzt, dass nur noch 
der im Anhang befindliche Code übrig geblieben ist.

Hoffe, dass mir jemand helfen kann. Ich habe bisher schon soooo viel 
Zeit mit diesem Problem verbracht... :-(

Gruß
Marc
Angehängte Dateien:

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.