Win系統下打開串口轉換USB口的RS232串口,打不開問題

一、【問題】

1. QT窗口程序想通過串口與設備通信,於是以QT的方式初始化好,由於串口(物理)轉換USB的串口只有一個,別人用了,自己就沒法用,然後用虛擬串口調試,一切都正常,把功能都實現了8成了。到我能用串口(物理)轉換USB的串口時,在QT的UI上打開,提示“不能打開”,當時蒙了,這還能玩嗎?項目計劃時間要到了,關鍵是串口還不能打開,前面的調試白費了嗎?心底慌得不行呀。於是,找資料解決唄。

二、【錯誤現象及修改方式】(忙呀,就不囉嗦了)

     【錯誤原因】:portName = new QextSerialPort("COM15"); //得去看win驅動程序了

     【修改方式】:portName = new QextSerialPort("\\\\.\\COM15"); //聽說這樣是標準

 

【頭文件及模塊】查一下QT助手 :QextSerialPort
Header:
#include <QSerialPort> 
qmake:  //這個放在.pro中
QT += serialport

 

參考:(謝謝)

http://blog.sina.com.cn/s/blog_8acf1be101016mhx.html

建議:(上面的方法治標不治本,用以上的方法串口可以打開了,後面還有堆問題。)
最好不要再用第三方的QextSerialPort之類的文件包,它們是QT5之前的東西,現在QT不斷的更新而QextSerialPort之類並沒有同時更新,於是在QT5下使用QextSerialPort會出現這樣或者那樣的問題,當然你非要用也是沒問題就是需要你對QextSerialPort第三方的文件包進行重新修改,如果你時間很多的話,而在QT在QT5環境下使用SDK提供的QSerialPort類不會出現以上出現的問題。

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章