From c389c75bbea8c96d32b22510ba6a1ef7f12bee1c Mon Sep 17 00:00:00 2001 From: yangjiaxuan <171295266@qq.com> Date: Wed, 28 Jun 2023 18:31:03 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=8D=8E=E5=87=8C=E7=95=B8?= =?UTF-8?q?=E5=8F=98=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hgdriver/hgdev/hg_scanner_239.cpp | 37 +++++++++++++++++++------------ 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/hgdriver/hgdev/hg_scanner_239.cpp b/hgdriver/hgdev/hg_scanner_239.cpp index ea17a3c..96aef5c 100644 --- a/hgdriver/hgdev/hg_scanner_239.cpp +++ b/hgdriver/hgdev/hg_scanner_239.cpp @@ -276,13 +276,18 @@ int hg_scanner_239::set_devs_distortion_check_val(float data) std::lock_guard lock(io_lock_); int val = *(int*)&data; - setting3399::Scanner_Reg_Defs ratio = setting3399::SR_SET_V_200_RATIO; - if (resolution_ <= 200) - ratio = setting3399::SR_SET_V_200_RATIO; - else if (resolution_ > 200 && resolution_ <= 300) - ratio = setting3399::SR_SET_V_200_RATIO; - else if (resolution_ > 300 && resolution_ <= 600) - ratio = setting3399::SR_SET_V_200_RATIO; + setting3399::Scanner_Reg_Defs ratio = setting3399::SR_SET_V_RATIO; //华凌畸变设置 + + if (firmware_sup_log_export_)//敦南畸变设置 + { + if (resolution_ <= 200) + ratio = setting3399::SR_SET_V_200_RATIO; + else if (resolution_ > 200 && resolution_ <= 300) + ratio = setting3399::SR_SET_V_300_RATIO; + else if (resolution_ > 300 && resolution_ <= 600) + ratio = setting3399::SR_SET_V_600_RATIO; + } + return write_register(ratio, val); } @@ -291,15 +296,19 @@ int hg_scanner_239::get_devs_distortion_check_val(float& data) std::lock_guard lock(io_lock_); int val = 0; - setting3399::Scanner_Reg_Defs ratio = setting3399::SR_GET_V_200_RATIO; - if (resolution_ <= 200) - ratio = setting3399::SR_GET_V_200_RATIO; - else if (resolution_ > 200 && resolution_ <= 300) - ratio = setting3399::SR_GET_V_200_RATIO; - else if (resolution_ > 300 && resolution_ <= 600) - ratio = setting3399::SR_GET_V_200_RATIO; + setting3399::Scanner_Reg_Defs ratio = setting3399::SR_GET_V_RATIO; + if (firmware_sup_log_export_) + { + if (resolution_ <= 200) + ratio = setting3399::SR_GET_V_200_RATIO; + else if (resolution_ > 200 && resolution_ <= 300) + ratio = setting3399::SR_GET_V_300_RATIO; + else if (resolution_ > 300 && resolution_ <= 600) + ratio = setting3399::SR_GET_V_600_RATIO; + } int ret = read_register(ratio, &val); + data = *(float*)&val; return ret; }