Forum: Mikrocontroller und Digitale Elektronik UART Empfang mit AVR Atmega8


von Dennis Brücke (Gast)


Lesenswert?

Hi @all mal wieder ;)

habe mir jetzt einige Codes angeschaut was den Empfang per UART
betrifft. Ein zeichen zu empfangen und auszuwerten ok. Aber wie mach
ich es z.b. wenn ich mehrere Zeichen empfangen will und dann später
auswerten ?

Empfang durch Interupt & dann in einer Form eines Ringpuffers ?!

Nur wie ist der Ablauf des Ringpuffers das habe ich leider nach
anschauen der vielen Codes nicht wirklich verstanden, und abschreiben
ohne zu verstehen will ich nicht.

Währe vieleicht einer so freundlich und könnte mir das mit dem
Ringpuffer nochmal erklären ?

Gruß Dennis

von Olaf (Gast)


Lesenswert?

Ganz einfach, du nimmst dir einen Speicherbereich der von Adresse A bis
B geht.

Dann nimmst du zwei Zeiger, nennen wir sie X und Y. Dort steht eine
Adresse deines Speicherbereichs drin.

Dann schreibst du dir eine Funktion welche den Inhalt von X/Y lesen und
schreiben kann.

Dann eine weitere Funktion welche den Wert von X oder Y inkrementiert
und wenn der Wert B erreicht wird, wieder auf A setzt.

Und dann machst du dir noch ein paar Gedanken um ueberlauf, oder sagen
wir mal lieber ueberrundung und Endabfrage. :-]

Olaf

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.