串口错误答案

时间:2016-02-05 10:43:30

标签: c++ qt serial-port

所以......我正在使用这段代码从powertek pa4400a中读取一些信息,有时我可以毫无问题地阅读它,但有时候我会得到奇怪的答案。我甚至无法理解字符的含义。

QSerialPort asd;
asd.setBaudRate(QSerialPort::Baud19200);
asd.setDataBits(QSerialPort::Data8);
asd.setFlowControl(QSerialPort::NoFlowControl);
asd.setParity(QSerialPort::NoParity);
asd.setStopBits(QSerialPort::OneStop);
asd.setPortName("ttyUSB0");
asd.open(QSerialPort::ReadWrite);
asd.write(com);
asd.waitForReadyRead(10000);
QString ans = asd.readAll();

ans字符串应如下所示:

"00.00E+0; 00.00E+0;+00.00E+0; 00.00E+0; 000:00:00;<<END OF DATA>>"

但我得到的是这样的事情:

"\xFB"

或其他任何不正确的东西。

我确实得到了很多次正确答案,但事情已经发生,我无法再阅读这些信息了。

1 个答案:

答案 0 :(得分:1)

这里的问题是我发送命令的机器是使用HardwareControl,但是我使用NoFlowControl,这搞砸了我的答案。