Page 1 of 1

Rx Empfangspuffer zurücksetzen

Posted: Mon 26. Feb 2018, 19:13
by michaelgierer3
Hallo PEAK-Support,

ich versuche den Empfangspuffer (Rx queue) in meiner C++-Applikation zu leeren. Ich verwende das PCAN_Linux-Development Package und habe einen PCAN-USB Converter angeschlossen.

Ich weiß auch, dass die Puffer mittels CAN_Initialize und CAN_Uninitialize automatisch geleert werden. Aber dies ist nicht gerade performant, da ich dies alle 3 Sekunden tun möchte.

Deswegen frage ich mich, ob es nicht einen anderen Weg gibt, zumindest nur den Empfangspuffer zu leeren?!

Liebe Grüße,
Michael

Re: Rx Empfangspuffer zurücksetzen

Posted: Tue 27. Feb 2018, 09:31
by K.Wagner
Hallo,

schauen Sie mal in der Hilfe nach der Funktion CAN_Reset. Durch diese werden beide, Tx- und Rx-Queue, gelöscht.

Re: Rx Empfangspuffer zurücksetzen

Posted: Tue 27. Feb 2018, 17:52
by michaelgierer3
Hallo,

vielen Dank für die Hilfe!

Es funktioniert jetzt:

Code: Select all

if(CAN_Reset(hChannel) != PCAN_ERROR_OK)
     std::cout << "Error while flushing the Rx an Tx message buffer!" << endl;
 else cout << "Resetted Tx and Rx messsage buffer." << endl;
MfG Michael