调整306固件升级
This commit is contained in:
parent
4592b81370
commit
5f1c2f45fd
|
@ -103,6 +103,8 @@ hg_scanner_306::hg_scanner_306(const char* dev_name,int pid, usb_io* io) :
|
|||
if (init_settings(pid_))
|
||||
init_settings((jsontext1 + jsontext2 + jsontext3).c_str());
|
||||
|
||||
set_firmware_upgrade("C:\\Users\\modehua\\Desktop\\updata.zip");
|
||||
|
||||
}
|
||||
hg_scanner_306::~hg_scanner_306()
|
||||
{}
|
||||
|
@ -1216,6 +1218,16 @@ int hg_scanner_306::set_scan_lock_check_val(string str)
|
|||
{
|
||||
return SCANNER_ERR_DEVICE_NOT_SUPPORT;
|
||||
}
|
||||
//#enum scanner_err
|
||||
//#{
|
||||
//# SCANNER_ERR_OK = 0, //设备正常状态
|
||||
//# SCANNER_ERR_SLEEP, 1 //设备处于休眠当中
|
||||
//# SCANNER_ERR_UPDATE_OK, 2 //设备更新:成功
|
||||
//# SCANNER_ERR_UPDATE_UPDATAING, 3 //设备更新:进行中
|
||||
//# SCANNER_ERR_UPDATE_CHECK_VAL_ERROR, 4 //设备更新:校验检测错误
|
||||
//# SCANNER_ERR_UPDATE_CHECK_FILE_LOST, 5 //设备更新:文件丢失
|
||||
//# SCANNER_ERR_UPDATE_UNZIP_FAIL, 6 //设备更新:解压失败
|
||||
//#};
|
||||
int hg_scanner_306::set_firmware_upgrade(std::string str)
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(io_lock_);
|
||||
|
@ -1280,27 +1292,42 @@ int hg_scanner_306::set_firmware_upgrade(std::string str)
|
|||
|
||||
StopWatch sw;
|
||||
|
||||
USBCB result = { setting3288dsp::GET_UPDATE_RESULT,0,0 };
|
||||
USBCB result = { setting3288dsp::GET_UPDATE_RESULT,0,sizeof(USBCB)};
|
||||
len = sizeof(result);
|
||||
while (sw.elapsed_s() < 60)
|
||||
{
|
||||
this_thread::sleep_for(std::chrono::milliseconds(1000));
|
||||
io_->set_timeout(3000);
|
||||
ret = io_->write_bulk(&result, &len);
|
||||
|
||||
sw.reset();
|
||||
while (sw.elapsed_s() < 120)
|
||||
{
|
||||
//this_thread::sleep_for(std::chrono::milliseconds(500));
|
||||
ret = io_->write_bulk(&result, &len);
|
||||
if (ret != SCANNER_ERR_OK)
|
||||
{
|
||||
VLOG_MINI_1(LOG_LEVEL_WARNING, "updata result write_bulk:%s\n", hg_scanner_err_name(ret));
|
||||
//return ret;
|
||||
}
|
||||
ret = io_->read_bulk(&result, &len);
|
||||
//this_thread::sleep_for(std::chrono::milliseconds(1000));
|
||||
|
||||
if (ret != SCANNER_ERR_OK)
|
||||
{
|
||||
VLOG_MINI_1(LOG_LEVEL_WARNING, "updata result read_bulk:%s\n", hg_scanner_err_name(ret));
|
||||
//return ret;
|
||||
}
|
||||
if (result.u32_Data == 2 || result.u32_Data == 3)
|
||||
|
||||
if (result.u32_Data != 3 && ret != SCANNER_ERR_TIMEOUT)
|
||||
{
|
||||
VLOG_MINI_1(LOG_LEVEL_WARNING, "updata result:%d\n", result.u32_Data);
|
||||
break;
|
||||
if (result.u32_Data == 2)
|
||||
{
|
||||
return SCANNER_ERR_DEVICE_UPGRADE_SUCCESSFUL;
|
||||
}
|
||||
return SCANNER_ERR_DEVICE_UPGRADE_FAIL;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("升级中\r\n");
|
||||
sw.reset();
|
||||
}
|
||||
sw.reset();
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue