zgxcom123 发表于 2012-6-8 09:27:07

【求助】QT编写串口上位机 最高位接收错误

最近在学习编写QT上位机,串口收发,之前一切正常,直到…………

昨晚借同学的CH340串口线,安装驱动后(默认COM8),程序编写总是出现一些莫名其妙的错误
最明显的就是,最高位总是接收为零(TX RX短接)

发送0xff 接收为十进制127即0x7f 最高为始终为零
如果此时打开其他的串口工具(包括网络上的QT串口工程)

收发一次0xff(正常)

再打开自己的程序,一切恢复………………

恢复的现象持续到本次串口线拔出
上述过程,程序均未再重新编译,后来又找到一根2303的串口线,症状依旧


怀疑是CH340的驱动问题(之前还出现过打开串口失败,发送速率过快导致死机等症状)
于是卸载CH340的驱动(此时串口号已改)仅用PL2303
现象依旧

如果是程序问题,为什么会在另一个程序收发后恢复正常?对此表示不解
在此请大家帮我看看可能是什么原因
系统为Win7 32bit

zgxcom123 发表于 2012-6-8 10:11:31

找了一个带原生串口的机子
问题依旧
排除驱动问题
应该是程序的毛病……
回去再慢慢研究
晚些把源码发上来

D.lovers 发表于 2012-7-12 22:33:13

楼主,用的是什么语言?C++。
我现在正在学pyQt

zgxcom123 发表于 2012-7-13 12:06:48

D.lovers 发表于 2012-7-12 22:33 static/image/common/back.gif
楼主,用的是什么语言?C++。
我现在正在学pyQt

嗯~ C++
用起来挺方便的

peipei521 发表于 2013-1-2 19:15:02

zgxcom123 发表于 2012-7-13 12:06 static/image/common/back.gif
嗯~ C++
用起来挺方便的

你好,能把你的qt的串口程序给我发一份吗?我最近也想写个上位机,串口通信的资料很少,我不会以hex形式发送,还请帮帮忙啊

ming180 发表于 2013-1-2 19:42:46

peipei521 发表于 2013-1-2 19:15 static/image/common/back.gif
你好,能把你的qt的串口程序给我发一份吗?我最近也想写个上位机,串口通信的资料很少,我不会以hex形式 ...

ls,可以参考QextSerialPort里的例子,用法比较简单
QextSerialPort源码地址

peipei521 发表于 2013-1-2 22:37:59

ming180 发表于 2013-1-2 19:42 static/image/common/back.gif
ls,可以参考QextSerialPort里的例子,用法比较简单
QextSerialPort源码地址

谢了啊

booboyo 发表于 2013-3-11 11:39:33

麻烦问一下你遇到的这个问题解决了么,我也遇到了
麻烦问一下你遇到的这个问题解决了么,我也遇到了

wangjt1988 发表于 2013-3-11 12:21:35

以前遇到过   不是qt   但是现象一样   是数据位的问题    设置成7位了

monkeynav 发表于 2013-3-11 12:35:34

我用QSerialPort类,没出任何问题
Qt 5.1会把这个类加入qt-trunk

zgxcom123 发表于 2013-3-11 12:55:25

monkeynav 发表于 2013-3-11 12:35 static/image/common/back.gif
我用QSerialPort类,没出任何问题
Qt 5.1会把这个类加入qt-trunk

就是用的这个类……

估计还是自己的程序有问题… 后面打算用stm32直接上HID

monkeynav 发表于 2013-3-14 09:39:17

zgxcom123 发表于 2013-3-11 12:55 static/image/common/back.gif
就是用的这个类……

估计还是自己的程序有问题… 后面打算用stm32直接上HID ...

估计还是设置错误,检查所有参数的类型,尽量用枚举

bbs2009 发表于 2013-3-14 10:28:17

worldsing 发表于 2013-12-27 16:07:32

Qt5.2 的QSerailPort在子程里用有问题
单次发送只能发1024byte
是否发现。????

主线成里没问题。

ddseven 发表于 2014-2-10 16:28:17

你可以看看天嵌的例子,他的串口操作代码已经开源了。

我的方法,开后台处理串口,然后数据流或共享内存!
页: [1]
查看完整版本: 【求助】QT编写串口上位机 最高位接收错误