Forum: Mikrocontroller und Digitale Elektronik Wie FIFO aus dem FIFO-Artikel verwenden?


von Peter (Gast)


Lesenswert?

Hallo, ich möchte den einfach FIFO aus dem Artikel 
http://www.mikrocontroller.net/articles/FIFO#Code-Beispiel verwenden.
Nur verstehe ich leider nicht wie ich den Verwenden soll. Mir ist klar, 
dass ich z.B. mit
1
BufferIn('A');
2
BufferIn('B');
3
BufferIn('C');
Zeichen in den FIFO einfügen kann.

Nun verstehe ich aber nicht wie ich die Zeichen auch wieder heraus 
bekomme.
Was kann ich mit dieser Funktion machen?
Und worauf zeigt pByte und wieso muss ich diesen Pointer mit übergeben 
beim Auslesen? Ich möchte doch nur immer den erst hineingeschriebenen 
Wert (der noch nicht entnommen wurde) herausnehmen. Wieso gibt diese 
Funktion Erfolg / Misserfolg zurück und nicht das Zeichen ?!
1
uint8_t BufferOut(uint8_t *pByte);

Danke für eure Antworten

von Max H. (hartl192)


Lesenswert?

Peter schrieb:
> Und worauf zeigt pByte
Auf die Variable in der das aus dem Buffer geholte Byte stehen soll.
> wieso muss ich diesen Pointer mit übergeben
> beim Auslesen?
Damit die Funktion weiß wohin sie das aus dem Buffer geholte Byte 
schreiben soll.
> Wieso gibt diese
> Funktion Erfolg / Misserfolg zurück und nicht das Zeichen ?!
Wie soll man sonst wissen ob das Lesen geklappt hat oder nicht?


Peter schrieb:
> Nun verstehe ich aber nicht wie ich die Zeichen auch wieder heraus
> bekomme.
z.B. so:
1
uint8_t byte_from_buffer;
2
3
if(BufferOut(&byte_from_buffer) != SUCCESS)
4
{
5
  // Fehlerbehandlung
6
}
7
...

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.