QtSerialPort sending data
-
Hi and hello,
short problem. I try to send 3 commands with QtSerialPort to a device. If I send them in 3 different routines triggered by 3 buttons it works perfect. If I call these 3 routines from one additional routine it fails. The fourth routine includes the correct timing (sleep(2000)) on a windows system. A port sniffer shows the right commands, a break of 2000 ms from the first one to the second, but the third one comes together with the second one.
@
button1-click -> command1
button2-click -> command2
button3-click -> command3
@
the other way
@
button4-click -> command1 -> sleep(2000)->command2->sleep(2000)->command3
@
Why there is no break between command2 and command3 in the second way?Thanks,
Erni35 -
Please do not use sleep() call, because it is freeze event-loop.
Instead use QTimer with command interval 2000 msec to send. -
OK.
But then I have to use signal - slot more...
My little problem I solved this way. Now I wait for the response from the first command in a signal - slot loop, and it helpsErni35
-
IMHO, if you're going to use Qt, then you really need to lose the idea that using signals and slots are bad or cumbersome or something to avoid having to use. They're a fundamental part of the tool kit.
-
I know. And now, with using these tools it loks pretty good. And it works! Thanks you.