STM32L451 UART overrun: Interrupt auch ohne Enable?

OP #6115520
hallo :(

Ist das normal? Ein UART benutzt zum Empfang Interrupts, also sind der 
RXNE Interrupt und der RTO Interrupt eingeschaltet und sonst nichts. Das 
funktioniert auch -- solange es keinen overrun error gibt. Dann bleibt 
der/ein Interrupt aktiv, auch wenn keine weiteren Zeichen rein kommen.

Wenn man das ORE Flag explizit löscht, scheint es zu funktionieren, 
aber overrun errors sind nicht leicht zu provozieren und Endlosschleifen 
auf Interrupt-Ebene sind sowieso doof. Ich bin auch nur 95% sicher, dass 
die Endlosschleife so kurz ist. Es ist auch unlogisch, weil es extra ein 
error interrupt enable (EIE) gibt, das nicht gesetzt ist.

Im STM32L451xx device errata pdf steht nichts und im RM0394 ist alles so 
beschrieben, wie man es sich vorstellt. Meine pdfs sind allerdings alt 
(Oktober bzw. Dezember 2018). Hat evt. jemand bessere Connections zu ST 
und etwas neuere Ausgaben?

P.S. ein Breakpoint auf den ersten overrun error ergab auch nicht viel:
1
CR1  0400142d
2
CR2  00800000
3
CR3  00000000
4
RTOR 00000027
5
ISR  006110eb

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 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.