qt5發布之前,qt實現串列埠通訊一般是採用第三方類庫qextserialport。qt5發布後自帶了qtserialport 能夠支援串列埠通訊。
一:qt5.0以下版本
1.在工程中引入4個檔案。
qextserialbase.cpp和qextserialbase.h 以及posix_qextserialport.cpp和posix_qextserialport.h
2.新增標頭檔案包含:
#include 「posix_qextserialport.h」
3. private中宣告物件:
posix_qextserialport *mycom;
4. 串列埠引數設定
mycom = new posix_qextserialport("/dev/ttysac3",qextserialbase::polling);
mycom ->open(qiodevice::readwrite); //以讀寫方式開啟串列埠
mycom->setbaudrate(baud115200); //波特率設定,我們設定為115200
mycom->setdatabits(data_8); //資料位設定,我們設定為8位資料位
mycom->setparity(par_none); //奇偶校驗設定,我們設定為無校驗
mycom->setstopbits(stop_1); //停止位設定,我們設定為1位停止位
mycom->setflowcontrol(flow_off); //資料流控制設定,我們設定為無資料流控制
mycom->settimeout(10);
具體的資訊和windows下的qt參考:
二:qt5.0以上版本
1. 在pro檔案中新增
qt += serialport
2. 引入標頭檔案
#include #include
3. 串列埠變數
qserialport *mycom;//宣告物件
4. 串列埠引數設定
mycom = new qserialport();
mycom->setportname("/dev/ttys0");
mycom->open(qiodevice::readwrite);
mycom->setbaudrate(qserialport::baud115200);
mycom->setbaudrate(qserialport::data8);
mycom->setparity(qserialport::noparity);
mycom->setstopbits(qserialport::onestop);
mycom->setflowcontrol(qserialport::noflowcontrol);
Linux下基於QT串列埠程式設計測試一
linux下基於qt串列埠程式設計測試一 環境 主機 fedora12 開發軟體 qt 目標板 mini6410 實現功能 目標板接收pc串列埠傳過來的資訊並在終端輸出,目標板串列埠接收資訊用select機制 源 widget.h ifndef widget h define widget h in...
Linux下基於QT串列埠程式設計測試一
環境 主機 fedora12 開發軟體 qt 目標板 mini6410 實現功能 目標板接收pc串列埠傳過來的資訊並在終端輸出,目標板串列埠接收資訊用select機制 源 widget.h cpp view plain copy ifndef widget h define widget h inc...
Linux下基於QT串列埠程式設計測試一
linux下基於qt串列埠程式設計測試一 環境 主機 fedora12 開發軟體 qt 目標板 mini6410 實現功能 目標板接收pc串列埠傳過來的資訊並在終端輸出,目標板串列埠接收資訊用select機制 源 widget.h ifndef widget h define widget h in...