当前位置: 首页 > news >正文

qt串口助手

mainWindows.c

构造函数

/*---------- 1. 串口对象初始化 ----------*/ serialPort = new QSerialPort(this); // 创建串口对象,指定父对象自动回收 /* 连接串口的“readyRead”信号到我们的自定义槽函数 */ connect(serialPort, &QSerialPort::readyRead,this,&MainWindow::manual_serialPortReadyRead); /*---------- 2. 扫描当前系统可用串口 ----------*/ ui->portnumber->clear(); // 先清空下拉框 foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts()) ui->portnumber->addItem(info.portName()); // 把端口号填到下拉框

新建函数

/*===================== 串口数据到达 =====================*/ void MainWindow::manual_serialPortReadyRead() { /* 1. 一次性读取内核缓冲区里当前可用的所有数据 */ QByteArray recBuf = serialPort->readAll(); /* 2. 累加接收字节数 */ recvNum += recBuf.size(); /* 3. 准备用于界面显示的字符串 */ QString str_rev; /* 4. 把原始字节 → 空格分隔的十六进制大写字符串 */ QString hexStr = recBuf.toHex(' ').toUpper(); // 例:"48 65 6C 6C 6F" str_rev += "->" + hexStr; /* 5. 行尾加换行,保证下次数据另起一行 */ str_rev += "\r\n"; // 插入文本并滚动到底部 ui->sendandreceivewindow->moveCursor(QTextCursor::End); ui->sendandreceivewindow->insertPlainText(str_rev); ui->sendandreceivewindow->moveCursor(QTextCursor::End); }

mainwindow.h

public: QSerialPort *serialPort; // 串口对象指针(生命周期与 MainWindow 一致) private: bool m_portOpened = false; // 记录串口是否已经打开 /*---- 收发计数 ----*/ long sendNum = 0; // 已发送字节数 long recvNum = 0; // 已接收字节数 void manual_serialPortReadyRead();
http://www.jsqmd.com/news/104713/

相关文章:

  • GPT-5.2 升级红利吃透指南:从版本碾压到3步极速落地
  • 手把手教你完成StaMPS雷达数据处理环境搭建
  • Blender建筑生成插件building_tools:3步创建专业建筑模型
  • 下载管理技术革新:智能下载如何重塑文件获取体验
  • 终极指南:如何高效利用KITTI-360数据集进行自动驾驶研究
  • Docker Registry 镜像缓存与客户端无感加速(以 Docker Hub 为例)
  • EmotiVoice在直播行业的创新应用设想
  • PalEdit幻兽编辑器终极指南:如何快速免费打造完美幻兽
  • SCPI Parser 终极指南:快速掌握开源仪器控制命令解析技术
  • Maxar Open Data:免费卫星影像数据的终极指南
  • 浏览器水印完整指南:3步实现防篡改保护方案
  • 虚拟偶像配音新突破!EmotiVoice情感编码技术揭秘
  • Unity口型动画革命:LipSync让角色真正开口说话
  • Vim插件管理器VAM终极指南:从零开始快速精通
  • EmotiVoice语音合成中的唇形同步配合技术建议
  • 运维转岗网安渗透,应该选择什么类型的岗位?大概工作内容是什么?
  • FanControl步进速率如何实现风扇噪音降低30%?三步诊断法快速定位配置问题
  • EmotiVoice深度解析:为什么它能成为开源语音合成黑马?
  • IDEA异常退出导致端口被占用解决方法(windows)
  • 40、GCC 对 C 语言的扩展
  • 半条鱼设计如何打造哈尔滨商业空间效果图新标杆?
  • 一键解锁!ComfyUI字幕增强插件:智能批量处理让字幕制作效率翻倍
  • EmotiVoice语音恐惧感控制需谨慎伦理边界
  • 如何免费扩展Mac存储空间:macOS iSCSI Initiator完整使用指南
  • uiautomator2终极升级指南:从2.x到3.x完整迁移方案
  • EmotiVoice语音合成系统灰度指标监控维度设定建议
  • 时间序列预测实践总结(门店销售额 - 时间序列预测)
  • 为什么运维转行会首选网安?网安到底好在哪?
  • XLeRobot强化学习环境:ManiSkill仿真平台5分钟快速部署指南
  • Label Studio国际化实战:从零搭建多语言数据标注平台