diff --git a/checher_slave.uvoptx b/checher_slave.uvoptx
index fab2888..f518321 100644
--- a/checher_slave.uvoptx
+++ b/checher_slave.uvoptx
@@ -299,7 +299,7 @@
1
0
- 0
+ 1
18
@@ -529,7 +529,7 @@
1
0
- 1
+ 0
18
@@ -1501,7 +1501,7 @@
rt_thread
- 1
+ 0
0
0
0
diff --git a/source/ReadMe.txt b/source/ReadMe.txt
index 70d945b..0ee2eb2 100644
--- a/source/ReadMe.txt
+++ b/source/ReadMe.txt
@@ -224,3 +224,5 @@
添加cmd_printf 函数不会自动添加换行符
2023.10.23
XT模块读取工厂信息测试命令返回读取结果
+2023.10.25
+ 解决检测后立即赋码会直接返回成功的bug
diff --git a/source/elec_det/elec_det.c b/source/elec_det/elec_det.c
index 47ad38b..6467a9d 100644
--- a/source/elec_det/elec_det.c
+++ b/source/elec_det/elec_det.c
@@ -161,6 +161,15 @@ array_def *elec_check_result(void)
}
+// 清除检测结果
+void elec_check_result_clear(void)
+{
+ self_def *s=&g_self;
+ CHECK_DO(s->data,arr_delete);
+}
+
+
+
// 写硬件版本号
array_def *elec_write_hardversion(int version)
{
@@ -371,7 +380,7 @@ array_def *elec_check_with_scheme(array_def *uid_psw)
CheckerTask task_fun=0;
uint8_t res=0;
array_def *r=arr_creat();
- CHECK_DO(s->data,arr_delete);
+ //CHECK_DO(s->data,arr_delete);
res=checker_runcfg.power_prapare_exe;
memset(&checker_runcfg,0,sizeof(Checker_RunCfg_st));
checker_runcfg.power_prapare_exe=res;
@@ -444,7 +453,7 @@ array_def *elec_code(array_def *uid_psw)
array_def *r=arr_creat();
uint8_t ret=0;
int check_ret=0;
- CHECK_DO(s->data,arr_delete);
+ //CHECK_DO(s->data,arr_delete);
check_ret=elec_code_param_check(uid_psw);
if(check_ret!=0){
arr_append(r,1);
diff --git a/source/elec_det/elec_det.h b/source/elec_det/elec_det.h
index fede35e..ab90f5d 100644
--- a/source/elec_det/elec_det.h
+++ b/source/elec_det/elec_det.h
@@ -20,6 +20,8 @@ array_def *elec_bootinfo(void);
array_def *elec_check_result(void);
+void elec_check_result_clear(void);
+
array_def *elec_write_hardversion(int version);
array_def *elec_write_resistor_cbv(int cbv);
diff --git a/source/elec_det/interface/JQChecker.c b/source/elec_det/interface/JQChecker.c
index dcf0a4f..ed2d592 100644
--- a/source/elec_det/interface/JQChecker.c
+++ b/source/elec_det/interface/JQChecker.c
@@ -532,10 +532,10 @@ void JQ_Test_ChgEnergy(void)
}
us_timeout--;
}
- if(us_end_cur > us_chgend_cur)
- {
- uc_rtv = 1;
- }
+// if(us_end_cur > us_chgend_cur)
+// {
+// uc_rtv = 1;
+// }
CurrentSampleR_Def;
Checker_MaskResult(uc_rtv,checker_runcfg.task_info.runindex);
us_array[0] = us_energy;
diff --git a/source/elec_det/interface/XTChecker.c b/source/elec_det/interface/XTChecker.c
index 8d73087..879c69f 100644
--- a/source/elec_det/interface/XTChecker.c
+++ b/source/elec_det/interface/XTChecker.c
@@ -306,10 +306,10 @@ void XT_Test_ChgEnergy(void)
}
us_timeout--;
}
- if(us_end_cur > us_chgend_cur)
- {
- uc_rtv = 1;
- }
+// if(us_end_cur > us_chgend_cur)
+// {
+// uc_rtv = 1;
+// }
CurrentSampleR_Def;
Checker_MaskResult(uc_rtv,checker_runcfg.task_info.runindex);
us_array[0] = us_energy;
diff --git a/source/main/compiler_info.h b/source/main/compiler_info.h
index bc2d4cf..eda1b5e 100644
--- a/source/main/compiler_info.h
+++ b/source/main/compiler_info.h
@@ -6,8 +6,8 @@
-#define BUILD_DATE "2023-10-23 15:26:13"
-#define SOFT_VERSION "2.01"
+#define BUILD_DATE "2023-10-25 16:38:07"
+#define SOFT_VERSION "2.02"
diff --git a/source/prebuild.py b/source/prebuild.py
index 2c9024a..d0fa23f 100644
--- a/source/prebuild.py
+++ b/source/prebuild.py
@@ -7,7 +7,7 @@ import mycopy
# 定义软件版本号
-SOFT_VERION = "2.01"
+SOFT_VERION = "2.02"
diff --git a/source/task/tran_for_slave.c b/source/task/tran_for_slave.c
index 2bd5e2b..f4c91b3 100644
--- a/source/task/tran_for_slave.c
+++ b/source/task/tran_for_slave.c
@@ -200,7 +200,12 @@ static int check_dolater(ucport_def *u,uint8_t cmd,array_def *data,char *err_str
}else{
arr_append(r,2);
}
- emit tran_reply_signal(u->p,arr_temp(r));
+ elec_check_result_clear();
+ if(c->cmd==cmd){
+ emit tran_reply_signal(u->p,arr_temp(r));
+ }else{
+ arr_delete(r);
+ }
return 0;
}
@@ -214,7 +219,6 @@ static ucport_def *check_self(tran_def *t, uint8_t cmd,array_def *data,
u->u.del=slave_del;
u->u.dolater=check_dolater;
c->check_fun=fun;
-
u->u.dolater(&u->u,cmd,data,"ok");
return (ucport_def *)u;
}
@@ -243,6 +247,7 @@ transmit_export(ym_slave,0x17,check_code)
static int stop_submit_dolater(ucport_def *u,uint8_t cmd,array_def *data,char *err_str)
{
g_check.submit_running=0;
+ g_check.cmd=0;
array_def *r=arr_creat();
arr_append(r,0);
emit tran_reply_signal(u->p,arr_temp(r));