其他分享
首页 > 其他分享> > qml 串口通信 数据格式转换记录

qml 串口通信 数据格式转换记录

作者:互联网

发送数据

  1. 16进制HEX转QByteArray

    QString CMD="55AA88FFFFFFFF";
    QByteArray str2 = QByteArray::fromHex (CMD.toLatin1().data());
    
  2. 需要循环发送 则需要在write 后加

    serial->write(str2);
    if(!serial->waitForBytesWritten())   //这一句很关键,决定是否能发送成功
    {
      qDebug()<<"serial write error";
    }
    

接收数据处理

  1. 转换成QString

        data.toHex();
    
  2. QByteArray 转int

      QByteArray dr;
      dr[0]=data[5];
      dr[1]=data[6];
       bool ok;
       int dta=dr.toHex().toInt(&ok,16);
       同理byte
        QByteArray b3;
        b3.append(data[3]);
        int states=b3.toHex().toInt(&ok,16);

标签:QByteArray,int,data,b3,qml,串口,数据格式,dr,toHex
来源: https://www.cnblogs.com/ggs403/p/15196011.html