方法一
代码如下:
void MainWindow::on_startBtn_clicked()
{
// STC_DLT645FRAME_T stDLT645Frame;
quint8 i=0;
quint8 arrDLT645Frame[12] = {0x68, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0x68, 0x13, 0x00, 0xDF, 0x16};
QByteArray baDLT645Frame;
for (; i<12 ;i++) {
baDLT645Frame.append(arrDLT645Frame[i]);
}
QByteArray baDLT645FrameToHex = baDLT645Frame.toHex();
std::string baDLT645FrameToStdString = baDLT645FrameToHex.toStdString();
QString strDLT645Framer = QString::fromStdString(baDLT645FrameToStdString);
ui->DispBTextEdit->setText(strDLT645Framer);
}
QByteArray转QString目的,在于上位机从终端设备获取的裸数据是Hex格式的,需要转为String格式显示在TextEdit控件上!
Hex数据添加到QByteArray中,然后调用toHex()函数,把0x68转为0x36和0x38两个元素,然后调用toStdString函数,最后stdstring转QString。
方法二
代码如下:
void MainWindow::on_startBtn_clicked()
{
quint