From c5b1afb88d63c8678ebb98f0e47839d5e9f911bf Mon Sep 17 00:00:00 2001 From: yangjiaxuan <171295266@qq.com> Date: Tue, 14 Nov 2023 11:42:06 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3300=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E5=9B=BA=E4=BB=B6=E5=8D=87=E7=BA=A7=E6=8A=A5=E9=94=99IO?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hgdriver/hgdev/hg_scanner_300.cpp | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/hgdriver/hgdev/hg_scanner_300.cpp b/hgdriver/hgdev/hg_scanner_300.cpp index 62e887d..7aeafd7 100644 --- a/hgdriver/hgdev/hg_scanner_300.cpp +++ b/hgdriver/hgdev/hg_scanner_300.cpp @@ -1398,6 +1398,7 @@ int hg_scanner_300::set_firmware_upgrade(std::string str) ret = io_->write_bulk(&pre, &len); //先告诉下面总字节数 if (ret != SCANNER_ERR_OK) { + VLOG_MINI_1(LOG_LEVEL_WARNING, "PRE_UPGRADE: %s\n", hg_scanner_err_name(ret)); return ret; } USBCB update = { setting3288dsp::START_UPGRADE,0,total }; @@ -1422,6 +1423,7 @@ int hg_scanner_300::set_firmware_upgrade(std::string str) ret = io_->read_bulk(&update, &len); if (ret != SCANNER_ERR_OK) { + VLOG_MINI_1(LOG_LEVEL_WARNING, "START_UPGRADE: %s\n", hg_scanner_err_name(ret)); return ret; } total -= block; @@ -1434,19 +1436,28 @@ int hg_scanner_300::set_firmware_upgrade(std::string str) USBCB updatefinished = { setting3288dsp::UPDATE_FINISHED,0,0 }; len = sizeof(updatefinished); ret = io_->write_bulk(&updatefinished, &len); + if (ret != SCANNER_ERR_OK) + { + VLOG_MINI_1(LOG_LEVEL_WARNING, "UPDATE_FINISHED: %s\n", hg_scanner_err_name(ret)); + } StopWatch sw; - USBCB result = { setting3288dsp::GET_UPDATE_RESULT,0,0 }; - len = sizeof(result); + this_thread::sleep_for(std::chrono::milliseconds(2000)); while (sw.elapsed_s() < 60) { this_thread::sleep_for(std::chrono::milliseconds(1000)); io_->set_timeout(3000); - ret = io_->write_bulk(&result, &len); - ret = io_->read_bulk(&result, &len); - //this_thread::sleep_for(std::chrono::milliseconds(1000)); + USBCB result = { setting3288dsp::GET_UPDATE_RESULT,0,0 }; + len = sizeof(result); + ret = io_->write_bulk(&result, &len); + if (ret == SCANNER_ERR_OK) + ret = io_->read_bulk(&result, &len); + else + { + VLOG_MINI_1(LOG_LEVEL_WARNING, "Write GET_UPDATE_RESULT failed: %d\n", ret); + } if (ret != SCANNER_ERR_OK) { @@ -1457,7 +1468,11 @@ int hg_scanner_300::set_firmware_upgrade(std::string str) { VLOG_MINI_1(LOG_LEVEL_WARNING, "updata result:%d\n", result.u32_Data); break; - } + } + else + { + VLOG_MINI_1(LOG_LEVEL_WARNING, "GET_UPDATE_RESULT---u32_Data:%d\n", result.u32_Data); + } } return ret; }