Forum: Mikrocontroller und Digitale Elektronik Was ist ein double buffered register?


von Thomas (Gast)


Lesenswert?

Viel muss ich hier nicht mehr schreiben, steht ja schon alles im 
Betreff! Vielen Dank für die Antworten!

von Falk B. (falk)


Lesenswert?

@ Thomas (Gast)

Ein doppelt gepuffertes Register. Sprich, es gibt im Hintergrund noch 
ein Register, welches die Daten zwischenspeichert. Macht man, um die CPU 
von kritischen Reaktionszeiten zu entlasten. Z.B. ist das UDR des UART 
in beiden Richtungen doppelt gepuffert. In Empfangsrichtung, um der CPU 
bis zu einem Zeichen (=10 Bit) Zeit zu lassen, es abzuholen. Das ist ein 
sehr kleiner FIFO. In Senderichtung, um "entspannt" und doch 
lückenlos Daten senden zu können.

MfG
Falk

von 2918 (Gast)


Lesenswert?

Ja, richtig. Steht ja schon da ? Was war das Problem ? Aha wo das Sinn 
macht. ZB wenn man 16bit als 2mal 8 bit speichert. Wenn man das erste 
Byte schreibt, wuerde der hinterliegende Prozess eine neue Zahl sehen. 
Doppel gepuffert heisst nun, das die erste 8 bit in einen puffer kommen, 
dann die zweiten 8 bit, und erst dann wird das Word freigegeben. Dann 
gibt es nur einmal eine neue Zahl und die ist richtig.

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.