移植Test命令,验证成功

EJ EX 写工厂信息验证成功
This commit is contained in:
ranchuan
2023-10-12 18:43:17 +08:00
parent f0f36cf79a
commit 17b4ebf188
25 changed files with 2363 additions and 87 deletions

View File

@@ -480,34 +480,22 @@ void XT_Test_WriteShell(void)
{
uint8_t uc_rtv = 0;
uint8_t uc_count = 0;
if((checker_runcfg.params[0] + checker_runcfg.params[1] > CHECKER_WRITE_BUF))
if(0 != Checker_FacBufCheck())
{
uc_rtv = 1;
Checker_MaskResult(uc_rtv,checker_runcfg.task_info.runindex);
return;
}
if(CheckCRC_8(&Checker_FacBuf[2],Checker_FacBuf[0]) != Checker_FacBuf[1])
//管壳号最长 13个字节
if((checker_runcfg.params[0] + checker_runcfg.params[1] > CHECKER_WRITE_BUF) || checker_runcfg.params[1] > 13)
{
uc_rtv = 1;
uc_rtv = 2;
Checker_MaskResult(uc_rtv,checker_runcfg.task_info.runindex);
return;
}
memset(XT_RunBuf,0,XT_CHECKER_RUN_BUF);
memcpy(XT_RunBuf,&Checker_FacBuf[2]+checker_runcfg.params[0],checker_runcfg.params[1]);
uc_rtv |= XT_Write_Shell(XT_RunBuf);
if(checker_runcfg.uid_len > 0)
{
uc_rtv |= XT_Read_Shell(checker_runcfg.writeuid,checker_runcfg.uid_len,XT_RunBuf+16);
}else{
uc_rtv |= XT_Read_Shell_All(XT_RunBuf+16);
}
for(uc_count = 0; uc_count < 13;uc_count++)
{
if(XT_RunBuf[uc_count] != XT_RunBuf[13+uc_count])
{
uc_rtv |= 0x01;
}
}
Checker_MaskResult(uc_rtv,checker_runcfg.task_info.runindex);
}
@@ -1237,7 +1225,49 @@ void XT_CurMonitor(void)
Checker_MaskResult(0,checker_runcfg.task_info.runindex);
}
/*
@brief 验证壳码 如果测试器有uid将采用uid方式通信
@param 命令缓存参数的起始
@param 验证数据长度
*/
void XT_Test_VerfyShell(void)
{
uint8_t uc_rtv = 0;
uint8_t uc_count = 0;
uint8_t uc_index = 0;
if(0 != Checker_FacBufCheck())
{
uc_rtv = 1;
Checker_MaskResult(uc_rtv,checker_runcfg.task_info.runindex);
return;
}
//管壳号最长 13个字节
if((checker_runcfg.params[0] + checker_runcfg.params[1] > CHECKER_WRITE_BUF) || checker_runcfg.params[1] > 13)
{
uc_rtv = 2;
Checker_MaskResult(uc_rtv,checker_runcfg.task_info.runindex);
return;
}
memset(XT_RunBuf,0,XT_CHECKER_RUN_BUF);
if(checker_runcfg.uid_len > 0)
{
uc_rtv=XT_Read_Shell(checker_runcfg.writeuid,checker_runcfg.uid_len,XT_RunBuf);
if(uc_rtv) uc_rtv =3;
}else{
uc_rtv=XT_Read_Shell_All(XT_RunBuf);
if(uc_rtv) uc_rtv =4;
}
uc_index = checker_runcfg.params[0]+2;
for(uc_count = 0; uc_count < checker_runcfg.params[1];uc_count++)
{
if(Checker_FacBuf[uc_index++] != XT_RunBuf[uc_count])
{
uc_rtv =5;
break;
}
}
Checker_MaskResult(uc_rtv,checker_runcfg.task_info.runindex);
}
CheckerTask xttaskArray[CHECKER_MAXID_COUNT] ={
Checker_PowerPrapare, //0 电源准备
@@ -1278,6 +1308,7 @@ Checker_ResistorSample,//34 桥丝电阻测试
XT_Test_UID_PWD_Bind ,//35 检测过程中注码
XT_Test_UID_PWD_Verify,//36 验证注码
XT_OnLine_SCAN ,//37 模块在线检测
XT_Test_VerfyShell ,//38 验证管壳码
(void*)0 //数组结束
};