QT做基于串口,tcpip,udp通信的上位机调试软件

xiaoxiao2021-02-27  308

一.基于串口通信。

 

serialport 类 在.pro文件中添加 QT += serialport 直接看代码: /* parity */ parityList<<"无"<<"奇"<<"偶"; ui->parity->addItems(parityList); ui->parity->setCurrentIndex(0); /* data bits */ dataBitsList<<"5"<<"6"<<"7"<<"8"; ui->dataBit->addItems(dataBitsList); ui->dataBit->setCurrentIndex(3); /* stop bits */ stopBitsList<<"1"<<"1.5"<<"2"; ui->stopBit->addItems(stopBitsList); ui->stopBit->setCurrentIndex(0);相信注释写的很清楚了。 从代码看,必须定义一个QSerialPortInfo类的对象,用于遍历系统可以使用的串口,用于显示。 串口发送函数如下: 接受函数 可以用readall(); 二:基于tcp/ip通讯 1:tcp客户端:主要掌握QTcpSocket类的五个信号:connected:连接上服务器成功disconnected:断开服务器readyRead:收到客户端信息hostFound:发现主机error(QAbstractSocket::SocketError);出错有了这五个信号,再自己编写响应的曹函数,便可以实现通信。 tcpSocket->connectToHost(*server_ip,port); //连接,连接成功时 发出connect信号 2:tcp服务器:QTcpServer,掌握信号SIGNAL:newConnection :发现新的客户端连接上来QTcpSocket类,掌握信号SIGNAL:disconnected :客户端断开连接不管是服务器模式还是客户端模式,都有响应的发送write函数和接受read函数。 3:udp模式:udp模式更简单,还可以广播地址发送数据 udpSocket->writeDatagram((char *)&Sdata.buf[0],Sdata.buf_length,QHostAddress::Broadcast,port);

转载请注明原文地址: https://www.6miu.com/read-3859.html

最新回复(0)