qt5.14.2+dht22+arduino 串口传输实时采集数据
本人新手一枚,近期遇到一个问题,想请教高手解答, 我用arduino 连接dht22 采集实时温湿度数据,下位机已经做好了,自己做了一个串口通讯上位机 用来显示温湿度数据和波形图,现在问题是 能接收下位机返回来的实时温湿度数据,但是在上位机界面显示不完整, 比如说温度23.9 湿度60.1 在lineedit或lcdnumber 只显示3.9 或者湿度控件直接显示0 我也曾试图split分隔采集来的数据,但没成功, 请高手指教一二, 不胜感激 可附代码图
void Widget::AnalyzeData()
{//读取数据
QByteArray recvData = myserial->readAll();//定义mytemp为串口读取的所有数据
recvData.resize(1024);
qDebug()<<"recvData:"<<recvData;
if(!recvData.isEmpty())
{//从dht22采集来的数据进行转换 由bytearray 转成int
QString StrI1=recvData.toHex().mid(8,2);
QString StrI2=recvData.toHex().mid(24,2);
//.toHex()这一步很关键,没有这一步显示的是乱码
int tem=StrI1.toInt(0,16);
int hum=StrI2.toInt(0,16);
ui->textBrowser->insertPlainText(recvData);
ui->lab_Temp->setText(StrI1);//显示读取温度值
ui->lab_Humi->setText(StrI2);//显示读取湿度值
ui->tem_lcdNumber->display(tem);
ui->hum_lcdNumber->display(hum);
recvData.clear();