ich spiele gerade etwas mit der qextserialport library rum. Was mich aber wundert ist, dass das Lesen extrem lange dauert. Der read-Methode können ja die Anzahl der zu lesenden Bytes mitgegeben werden. Dann müsste er doch eigentlich aufhören, wenn die Bytes voll sind. Trotzdem ist die Dauer des Lesens vom eingestellten Timeout abhängig.
Ich habe jetzt einmal probiert, 2 Bytes zu lesen:
Code: Alles auswählen
QTime *time = new QTime();
time->start();
if ( !(SendCommand(sequence, sizeof(sequence), 0)) ) return false;
std::cerr << "SendCommand: " << time->elapsed() << std::endl;
time->restart();
qint64 res = port->read((char*)result,sizeof(values));
std::cerr << "Read: " << time->elapsed() << std::endl;
std::cerr << "res: " << res << std::endl;
Das gleiche Gerät mit der gleichen Anfrage nur in C# programmiert braucht für das Lesen nur 2ms...
Wisst Ihr eine Möglichkeit, wie man das irgendwie beschleunigen kann???
MfG, und vielen Dank, Ozzy