赞
踩
程序示例精选
VS2022+Qt雕刻机单片机马达串口上位机控制系统
如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助!
这篇博客针对《VS2022+Qt雕刻机单片机马达串口上位机控制系统》编写代码,代码整洁,规则,易读。 学习与应用推荐首选。
一、所需工具软件
二、使用步骤
1. 主要代码
2. 运行结果
三、在线协助
1. Python
2. Pycharm
*********************************************************** void MainWindow::on_openBtn_clicked() { if (ui.pushButton->text() == QStringLiteral("打开串口")) { std::cout << "openBtn " << std::endl; myPort = new QSerialPort(this); myPort->setPortName(portname); std::cout << "test_ " << std::endl; if (myPort->open(QIODevice::ReadWrite)) { myPort->setBaudRate(baudRate); myPort->setDataBits(QSerialPort::DataBits(databit)); myPort->setParity(QSerialPort::Parity(parity)); myPort->setStopBits(QSerialPort::StopBits(stopbit)); statusBar()->showMessage(QStringLiteral("串口已经打开"));//状态栏显示的内容 //connect(myPort, SIGNAL(readyRead()), this, SLOT(readCom())); ui.pushButton->setText((QStringLiteral("关闭串口"))); } else { //QMessageBox::information(this,tr("提示框"),tr("串口无法打开")); statusBar()->showMessage(QStringLiteral("串口无法打开"));//状态栏显示的内容 } } else { myPort->close(); statusBar()->showMessage(QStringLiteral("串口已经关闭")); //状态栏显示的内容 ui.pushButton->setText(QStringLiteral("打开串口")); } } void MainWindow::readCom() { qDebug() << " "; std::cout << "readCom运行" << std::endl; QByteArray byte_data = myPort->readAll(); //读取串口数据 qDebug() << QStringLiteral("文本接收byte_data: ") << byte_data; //转为QString //QString strDisplay=QString::fromUtf8(byte_data);; QString strDisplay = QString::fromLocal8Bit(byte_data);; qDebug() << QStringLiteral("文本接收strDisplay: ") << strDisplay; //得到接收radioButton控件选项 QString getRadioButtonText = QString("%1").arg(ui.radioButton->isChecked()); QString getRadioButtonHEX = QString("%1").arg(ui.radioButton_2->isChecked()); std::cout << "getRadioButtonText: " << getRadioButtonText.toStdString() << std::endl; std::cout << "getRadioButtonHEX: " << getRadioButtonHEX.toStdString() << std::endl; //将读取到的数据进行转化,是否是按16进制显示 if (getRadioButtonHEX == QStringLiteral("1")) { std::cout << "HEX接收 "<< std::endl; for (int i = 0; i < str.length(); i += 2) { QString st = str.mid(i, 2);//从i这个位置开始,返回2个字符串 strDisplay += st; strDisplay += " "; } qDebug() << "strDisplay" << strDisplay; ui.textEdit->insertPlainText(strDisplay); } else if (getRadioButtonText == QStringLiteral("1")) { std::cout << "文本接收" << std::endl; ui.textEdit->insertPlainText(byte_data); } byte_data.clear(); } //清空接收框 void MainWindow::on_pushButton_2_clicked() { ui.textEdit->clear(); }
1)远程安装运行环境,代码调试
2)Visual Studio, Qt, C++, Python编程语言入门指导
3)界面美化
4)软件制作
5)云服务器申请
6)网站制作
当前文章连接:https://blog.csdn.net/alicema1111/article/details/132666851
个人博客主页:https://blog.csdn.net/alicema1111?type=blog
博主所有文章点这里:https://blog.csdn.net/alicema1111?type=blog
博主推荐:
Python人脸识别考勤打卡系统:
https://blog.csdn.net/alicema1111/article/details/133434445
Python果树水果识别:https://blog.csdn.net/alicema1111/article/details/130862842
Python+Yolov8+Deepsort入口人流量统计:https://blog.csdn.net/alicema1111/article/details/130454430
Python+Qt人脸识别门禁管理系统:https://blog.csdn.net/alicema1111/article/details/130353433
Python+Qt指纹录入识别考勤系统:https://blog.csdn.net/alicema1111/article/details/129338432
Python Yolov5火焰烟雾识别源码分享:https://blog.csdn.net/alicema1111/article/details/128420453
Python+Yolov8路面桥梁墙体裂缝识别:https://blog.csdn.net/alicema1111/article/details/133434445
Python+Yolov5道路障碍物识别:https://blog.csdn.net/alicema1111/article/details/129589741
Python+Yolov5跌倒检测 摔倒检测 人物目标行为 人体特征识别:https://blog.csdn.net/alicema1111/article/details/129272048
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。