UART am AT90CAN128

Gast #1111669
Hallo,

ich habe einen AT90CAN128 auf einem STK500 und versuche mich an der UART 
Schnittstelle.

Mein Prog siehe Anhang. Wenn ich in die ISR nur


UDR0 = UDR0;


schreibe habe ich ein tolles echo. Also HW so weit OK.

Jetzt möchte ich aber eine Zeichenkette empfangen und in ein Array 
speichern. Schon klappts nicht mehr !
Es scheint so, als würde nicht mehr in die while Schleife 
zurückgesprungen. Im Debugger sehe ich, dass nach dem 2. Zeichen nichts 
mehr empfangen wird.

Kann jm. helfen ?

Mein Ziel ist es Zeichen bis zu \n zu empfangen, diese in einem string 
zu bekommen und diesen auswerten.

in der while möchte ich die Zeichenkette wieder ausgeben. (nur zum 
testen)

Bestimmt gibt es eine bessere Lösung. In diesem Fall würde ich meine 
natürlcih ersetzen.


Danke
Angehängte Dateien:
Gast
und
int char_count=0; sollte besser
volatile int char_count=0;
heissen, wenn Du sie im Interrupt hochzählst, sonst weiss das main 
nicht, dass sie sich in der ISR geändert hat

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.