void MainWindow:n_openButton_clicked() { if(ui->openButton->text()==tr("开启")) { //电流串口 serial1 = new QSerialPort; //设置串口名 serial1->setPortName("COM2"); //打开串口 serial1->open(QIODevice::ReadWrite); //设置波特率 serial1->setBaudRate(9600); //设置数据位数 serial1->setDataBits(QSerialPort::Data8); //设置奇偶校验 serial1->setParity(QSerialPort::NoParity); //设置停止位 serial1->setStopBits(QSerialPort::OneStop); //设置流控制 serial1->setFlowControl(QSerialPort::NoFlowControl); //关闭设置菜单使能 // ui->ortBox1->setEnabled(false); ui->openButton->setText(tr("关闭")); //连接信号槽 QObject::connect(serial1, &QSerialPort::readyRead, this, &MainWindow::Read_Data); else { //关闭串口 serial1->clear(); serial1->close(); serial1->deleteLater();} void MainWindow::Read_Data() { // times++; //读取串口数据 QByteArray byte_data=serial->readAll(); //将读取到的数据进行转化 QString strDisplay; static QByteArray a; if(a.length()<30) a +=byte_data; else{ a +=byte_data; QString str=a.toHex(); // qDebug()<<str;
|