IowKitReadImmediate() liefert immer true als Rückgabewert...

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

Post Reply
finalcu
Posts: 26
Joined: Fri Nov 13, 2009 8:53 am

IowKitReadImmediate() liefert immer true als Rückgabewert...

Post by finalcu »

...wieso? Gemäss API sollte sie false zurückgeben falls kein neuer Report anliegt...

Gruss,
finalcu

PS: Ich habe dieselbe Frage schon im vorherigen Thread gepostet aber darauf keine Antwort bekommen. Daher habe ich mir die Freiheit genommen, die Frage nochmals zu stellen.
friend-of-rq
Posts: 389
Joined: Sun Feb 13, 2005 1:22 pm
Location: Gerblingerode / Duderstadt
Contact:

Re: IowKitReadImmediate() liefert immer true als Rückgabewert...

Post by friend-of-rq »

Hallo finalcu,


verwende doch IowKitReadNoBlocking() auf Pipe(0) dann bekommst Du den aktuellen Port-Status nach einer Änderung,

wenn ich mich recht erinnere liefert IowKitReadImmediate() nur eine Information welche Ports(Pins) sich geändert haben aber nicht den aktuellen Status der Ports(Pins) ...

in deinem Programm verwendest Du für Pipe = IOW_PIPE_IO_PINS welchen wert hat diese Variable ?

Gruss Ralf
finalcu
Posts: 26
Joined: Fri Nov 13, 2009 8:53 am

Re: IowKitReadImmediate() liefert immer true als Rückgabewert...

Post by finalcu »

IOW_PIPE_IO_PINS hat soweit ich weiss den Wert 0. Zweck meines Initialisierungcodes ist es den Buffer zuerst zu entleeren und dann den aktuellen Pin Status speichern. Mit IowKitReadNoBlocking() erhalte ich ja keinen Report nachdem ich den ganzen Buffer entleert habe. Anderseits kann ich ja auch nicht einfach den letzten Report nehmen, den ich beim Entleeren des Buffers erhalten habe, da der Buffer ja von Anfang an leer sein könnte...
Guido Körber
Site Admin
Posts: 2879
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Re: IowKitReadImmediate() liefert immer true als Rückgabewert...

Post by Guido Körber »

iowKitReadImmediate sendet einen Request an den IO-Warrior den aktuellen Pinstatus zu melden. Sofern der IO-Warrior also da ist kommen da immer Daten zurück. iowKitReadNonBlocking wäre die richtige Methode die Reports abzuholen.
finalcu
Posts: 26
Joined: Fri Nov 13, 2009 8:53 am

Re: IowKitReadImmediate() liefert immer true als Rückgabewert...

Post by finalcu »

wann liefert IowKitReadImmediate() dann 'false' als Rückgabewert?
Guido Körber
Site Admin
Posts: 2879
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Re: IowKitReadImmediate() liefert immer true als Rückgabewert...

Post by Guido Körber »

Eigentlich nie, es sei denn die Kommunikation würde fehlschlagen.
Post Reply