我用qt 写了一个小程序给单片机发送更新固件.bin文件,bin文件用Xcom可以正常使用,boot loader也是可以使用的,但是用Qt写的小程序却发送数据对不上。。。。代码如下:void MainWindow::SendFile_Button(void){
sendTimer->stop(); auto_send->setDisabled(true); push_send->setDisabled(true); QString fileName = FilePath->text();
QFile *file = new QFile; file->setFileName(fileName); qDebug()<<"This file name is : "<<file->fileName(); bool ok = file->open(QIODevice::ReadOnly | QIODevice::Text); if(ok) { QByteArray line = file->readAll(); int length = line.size(); qDebug()<<"This file size is "<<length; QByteArray data = line.toHex(); QString strHex = ByteArrayToHexString(line);
qDebug()<<"Read this file:"; qDebug()<<strHex; qDebug()<<"data length is :"<<data.size(); // qDebug()<<data;
if(serial->isOpen()) { serial->clear(); serial->flush(); qDebug()<<"Send this file:"; serial->write(data);char hea[2] = {0x0D,0x0A}; serial->write(hea);
} file->close (); } else { QMessageBox::information(this,"Error Message", "File Open Error" + file->errorString()); return; }
delete file;}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
如果有可以钩讯号量, 应该可以观察得出来.
一周热门 更多>