连接到QT中的串行端口
Connecting to Serial port in QT
我想使用 QSerialPort
连接到微控制器。我已将线路串行端口添加到我的.pro
文件中,QSerialPort
包含在我的源文件中并运行qmake
.我的代码如下:
serial.setPortName("COM3");
serial.setBaudRate(QSerialPort::Baud9600);
serial.setDataBits(QSerialPort::Data8);
serial.setParity(QSerialPort::NoParity);
serial.setStopBits(QSerialPort::OneStop);
serial.setFlowControl(QSerialPort::NoFlowControl);
serial.open(QIODevice::ReadWrite);
serial.write("ok*");
当我运行代码时,我收到一条消息,说设备未打开,尽管我已经确认它已打开并带有TeraTerm
。我错过了什么?错误消息如下:
QIODevice::write: device not open
首先,您应该检查是否打开返回true
。如果否,则告诉用户错误并调用errorString()
if(serial.open(QIODevice::ReadWrite))
serial.write("ok*");
else
{
//error
qDebug() << serial.errorString();
}
您尝试在不同的程序中打开一个端口。在Windows中是被禁止的。所以你不能使用这个。在您的视频作者中,Qt
打开com3
,但在teraterm
中打开com4
,这是不同的端口,因此您应该使用相同的端口,而不是一个端口用于少数程序。
注意这个程序: com0com
相关文章:
- Qt Q串行端口未编程设备未关闭
- Qt两个串行端口发送和接收
- 写入和读取十六进制 TRAM QT 串行端口
- Qt串行端口数据接收
- Qt modbus 串行端口流量控制处理
- 用QT打开串行端口
- QT串行端口读数
- 从QT中的串行端口阅读时输出异常
- 使用QT的串行端口的外部行为
- Windows 7 的 QT 5.2 串行端口写入问题
- Qt串行端口有时会丢失最后一个字节
- Unix 串行端口程序与 qt 崩溃
- Qt串行端口程序在另一个系统上运行时崩溃
- Qt串行端口不能很好地读取字符串
- 有没有办法使用Qt串行端口更改电视输入
- 连接到QT中的串行端口
- 写入串行端口时Qt崩溃
- Qt串行端口:写入和读取数据
- Qt串行端口通信
- 连接的串行端口C Qt的列表