QT中如何判断COM口数据已经读完

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT中如何判断COM口数据已经读完相关的知识,希望对你有一定的参考价值。

参考技术A 这个COM口数据读完我分了两种意思来理解.
第一种是COM口的数据读空了.就是仅仅在当前这一刻,这一秒,这一微秒COM口没有数据.
这种情况下要判断COM口是否为空,要根据你使用的COM接口函数.通常一套完整的COM接口函数会有isEmpty()等类似的函数来判断当前COM是否为空.
如果是自己写的COM函数就应该判断COM的标准位了.

第二种是一段数据读取完整了.
就像是我们通过COM向下位机发生"hello",但是下位机并不知道要怎么样才算是数据结束了.这里有个误区: 我们会误以为hello发完了就算结束了.但是这种判断方法其实只有学过英语的人才知道.
要让机器知道我们的数据是否读取完整了.应该和下位机定个协议.例如遇到"\n\r"就表示数据完整了.可以输出了.
那我们的"hello"就变成了"hello/n/r"等机器读到"/n/r"就知道数据读完了,可以输出了.本回答被提问者和网友采纳
参考技术B readall就全读出来了.要知道有没有新数据来,关联他的readyread信号

qt如何判断数据库最后一行

如何判断qt中mysql表是不是到了最后一行。 如: while(?) ?就是判断是否为最后,不是就依次查询,是就结束

可以用if(mquery.next())进行判断~
if(mquery.next())

ui->label->setText(mquery.value(1).toString());

ui->label_2->setText(mquery.value(2).toString());



else

QMessageBox::warning(this, tr("查询错误"), QString(tr("最后一行信息")));

参考技术A QSqlQuery query;
query.exec(“select * from 表名");

while(query.next())
数据库查询

以上是关于QT中如何判断COM口数据已经读完的主要内容,如果未能解决你的问题,请参考以下文章

Qt中如何判断文件是照片还是视频?

qt如何判断数据库最后一行

如何判断哪个radiobutton被选中

如何判断当前使用的网络是 eth0 还是wlan0?

qt中如何判断光标在哪个文本框中啊

如何在vc++中判断计算机是不是安装c运行时库