Forum: Mikrocontroller und Digitale Elektronik PIC 16F627 mit UART-Problem


von Jens (Gast)


Lesenswert?

Hallo PIC-Fans,

ich kämpfe hier mit einem PIC 16F627, der ein merkwürdiges UART-Problem 
hat.
Aufgabenstellung ist, die am UART mit 9k6 eintreffenden Daten auf ein 
bestimmtes Stichwort zu überprüfen. Die Abfrage des UART erfolgt über 
eine Interupt-Routine. Das ganze funktioniert auch soweit ganz gut. 
Jetzt habe ich aber festgestellt, dass irgendwann der UART keinen 
Interupt mehr auslöst. Dieser Effekt tritt nur auf, wenn in schneller 
Folge Zeichen empfangen werden. Schicke ich die Zeichen mit reichlich 
Pause (100ms oder so), funktioniert es immer. Die Interuptroutine ist 
auf jeden Fall schnell genug, um innerhalb 1ms ein Byte von RX-Register 
abzuholen.

Das ganze ist etwas merkwürdig und ich stelle einfach mal die Frage hier 
ins Forum, ob jemand so ein Verhalten schon mal beobachtet hat und 
vielleicht sogar eine Abhilfe weiß?

Achja, programmieren tue ich in Assembler.

Danke schon mal.

von Tom (Gast)


Lesenswert?

Stichwort: Ringbuffer

von Bernd R. (Firma: Promaxx.net) (bigwumpus)


Lesenswert?

Wenn der UART Empfangsprobleme hat, gibt er Fehler-Flags aus (Framing, 
Overrun). Diese Flags muß man speziell behandeln! Es gibt auch Fehler, 
da muß man den Empfänger (CREN) ab- und wieder einschalten (Reset).

von Jens P. (picler)


Lesenswert?

@ Bernd Rüter

Danke für den Tipp. Auf die Idee, dass meine Probleme mit 
Übertragungsfehlern zu tun haben könnten, bin ich nicht gekommen. Auf 
jeden Fall werde ich mir mal die entsprechenden Seiten im Datenblatt 
anschauen und meine Empfangsroutine erweitern.

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.