Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
Rasenmaehroboter Test

Zeile 20: Zeile 20:
 
--PicNick 08:59, 5. Mär 2006 (CET)
 
--PicNick 08:59, 5. Mär 2006 (CET)
 
----
 
----
In der FIFO stehen ja nur Werte >= 0, und der Rückgabewert ist auch immer >= 0, wenn was drinne ist, <0 sonst. Ich erweitere also den Wertebereich. AUsserdem kann auf <0 sehr effizient gesestet werden. Wie würdest du es machen? --[[Benutzer:SprinterSB|SprinterSB]] 09:59, 5. Mär 2006 (CET)
+
In der FIFO stehen ja nur Werte >= 0. Und der Rückgabewert ist auch immer >= 0, wenn was drinne ist, ansonsten eben <0. Ich erweitere also den Wertebereich. Ausserdem kann auf <0 sehr effizient getestet werden. Wie würdest du es machen? --[[Benutzer:SprinterSB|SprinterSB]] 09:59, 5. Mär 2006 (CET)

Version vom 5. März 2006, 11:02 Uhr

int fifo_get_nowait (fifo_t *b)

Liefert das nächste Byte aus der FIFO als int bzw. -1, falls die FIFO leer ist.

Was machst du, wenn FF gespeichert ist ? oder muß das nur für Text gehen ? --PicNick 18:16, 4. Mär 2006 (CET)


Wenn FF gespeichert ist, wird FF zurück geliefert. Die FIFOs speichern ihre Werte als unsigned. Der return-Wert ist int, mithin ist also 255 != -1. Will man ein char lesen, dann so:

char zeichen;
int value;
if (value = fifo_get_nowait (&fifo), value >= 0)
   zeichen = (char) value;

bzw. man schreibt value direkt nach UDR oder wohin auch immer. --SprinterSB 19:04, 4. Mär 2006 (CET)


d.h. du verwendest die Bits >8 implizit als Schalter ? naja. --PicNick 08:59, 5. Mär 2006 (CET)


In der FIFO stehen ja nur Werte >= 0. Und der Rückgabewert ist auch immer >= 0, wenn was drinne ist, ansonsten eben <0. Ich erweitere also den Wertebereich. Ausserdem kann auf <0 sehr effizient getestet werden. Wie würdest du es machen? --SprinterSB 09:59, 5. Mär 2006 (CET)


LiFePO4 Speicher Test