Qt串口传输波特率问题。

波特率上位机必须和嵌入式设备相匹配!!!

昨天一天时间调试串口接受波特率数据。没有重视波特率以及调试过程。
调试程序的时候一定要注意波特率。
不匹配的话数据会出错,

Qt串口传输的两种实现方式

  • Qt5 的Qserialport  估计是将qextserialport封装 可能有点不稳定
  • qextserialport 2007年版本

设置Qt波特率

这里给一个qextserialport如何在窗口中设置的例子,要在Qt界面添加comboBox并且转到槽函数。
void MainWindow::on_comboBox_Freq_currentTextChanged(const QString &arg1)
{
    //设置波特率
	if (my_serialport != NULL)
	{
		switch (ui->comboBox_Freq->currentText().toInt())
		{
		case 50:
			my_serialport->setBaudRate(BAUD50);
			break;
		case 75:
			my_serialport->setBaudRate(BAUD75);
			break;
		case 110:
			my_serialport->setBaudRate(BAUD110);
			break;
		case 134:
			my_serialport->setBaudRate(BAUD134);
			break;
		case 150:
			my_serialport->setBaudRate(BAUD150);
			break;
		case 200:
			my_serialport->setBaudRate(BAUD200);
			break;
		case 300:
			my_serialport->setBaudRate(BAUD300);
			break;
		case 600:
			my_serialport->setBaudRate(BAUD600);
			break;
		case 1200:
			my_serialport->setBaudRate(BAUD1200);
			break;
		case 1800:
			my_serialport->setBaudRate(BAUD1800);
			break;
		case 2400:
			my_serialport->setBaudRate(BAUD2400);
			break;
		case 4800:
			my_serialport->setBaudRate(BAUD4800);
			break;
		case 9600:
			my_serialport->setBaudRate(BAUD9600);
			break;
		case 14400:
			my_serialport->setBaudRate(BAUD14400);
			break;
		case 19200:
			my_serialport->setBaudRate(BAUD19200);
			break;
		case 38400:
			my_serialport->setBaudRate(BAUD38400);
			break;
		case 56000:
			my_serialport->setBaudRate(BAUD56000);
			break;
		case 57600:
			my_serialport->setBaudRate(BAUD57600);
			break;
		case 76800:
			my_serialport->setBaudRate(BAUD76800);
			break;
		case 115200:
			my_serialport->setBaudRate(BAUD115200);
			qDebug() << "*****";
			break;
		case 128000:
			my_serialport->setBaudRate(BAUD128000);
			qDebug() << "*****";
			break;
		case 256000:
			my_serialport->setBaudRate(BAUD256000);
			break;
		default:
			my_serialport->setBaudRate(BAUD115200);
		}
	}
}




  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值