管壳码全0判断
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
<TargetName>app</TargetName>
|
||||
<ToolsetNumber>0x4</ToolsetNumber>
|
||||
<ToolsetName>ARM-ADS</ToolsetName>
|
||||
<pCCUsed>5060960::V5.06 update 7 (build 960)::.\ARMCC</pCCUsed>
|
||||
<pCCUsed>5060750::V5.06 update 6 (build 750)::ARMCC</pCCUsed>
|
||||
<uAC6>0</uAC6>
|
||||
<TargetOption>
|
||||
<TargetCommonOption>
|
||||
@@ -185,7 +185,6 @@
|
||||
<uocXRam>0</uocXRam>
|
||||
<RvdsVP>2</RvdsVP>
|
||||
<RvdsMve>0</RvdsMve>
|
||||
<RvdsCdeCp>0</RvdsCdeCp>
|
||||
<hadIRAM2>1</hadIRAM2>
|
||||
<hadIROM2>0</hadIROM2>
|
||||
<StupSel>8</StupSel>
|
||||
@@ -352,7 +351,7 @@
|
||||
<NoWarn>0</NoWarn>
|
||||
<uSurpInc>0</uSurpInc>
|
||||
<useXO>0</useXO>
|
||||
<ClangAsOpt>4</ClangAsOpt>
|
||||
<uClangAs>0</uClangAs>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
@@ -1550,7 +1549,6 @@
|
||||
<uocXRam>0</uocXRam>
|
||||
<RvdsVP>2</RvdsVP>
|
||||
<RvdsMve>0</RvdsMve>
|
||||
<RvdsCdeCp>0</RvdsCdeCp>
|
||||
<hadIRAM2>1</hadIRAM2>
|
||||
<hadIROM2>0</hadIROM2>
|
||||
<StupSel>8</StupSel>
|
||||
@@ -1717,7 +1715,7 @@
|
||||
<NoWarn>0</NoWarn>
|
||||
<uSurpInc>0</uSurpInc>
|
||||
<useXO>0</useXO>
|
||||
<ClangAsOpt>4</ClangAsOpt>
|
||||
<uClangAs>0</uClangAs>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
@@ -2084,6 +2082,57 @@
|
||||
<FileName>if_uart.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
<FilePath>.\source\interface\if_uart.c</FilePath>
|
||||
<FileOption>
|
||||
<CommonProperty>
|
||||
<UseCPPCompiler>2</UseCPPCompiler>
|
||||
<RVCTCodeConst>0</RVCTCodeConst>
|
||||
<RVCTZI>0</RVCTZI>
|
||||
<RVCTOtherData>0</RVCTOtherData>
|
||||
<ModuleSelection>0</ModuleSelection>
|
||||
<IncludeInBuild>0</IncludeInBuild>
|
||||
<AlwaysBuild>2</AlwaysBuild>
|
||||
<GenerateAssemblyFile>2</GenerateAssemblyFile>
|
||||
<AssembleAssemblyFile>2</AssembleAssemblyFile>
|
||||
<PublicsOnly>2</PublicsOnly>
|
||||
<StopOnExitCode>11</StopOnExitCode>
|
||||
<CustomArgument></CustomArgument>
|
||||
<IncludeLibraryModules></IncludeLibraryModules>
|
||||
<ComprImg>1</ComprImg>
|
||||
</CommonProperty>
|
||||
<FileArmAds>
|
||||
<Cads>
|
||||
<interw>2</interw>
|
||||
<Optim>0</Optim>
|
||||
<oTime>2</oTime>
|
||||
<SplitLS>2</SplitLS>
|
||||
<OneElfS>2</OneElfS>
|
||||
<Strict>2</Strict>
|
||||
<EnumInt>2</EnumInt>
|
||||
<PlainCh>2</PlainCh>
|
||||
<Ropi>2</Ropi>
|
||||
<Rwpi>2</Rwpi>
|
||||
<wLevel>0</wLevel>
|
||||
<uThumb>2</uThumb>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<uC99>2</uC99>
|
||||
<uGnu>2</uGnu>
|
||||
<useXO>2</useXO>
|
||||
<v6Lang>0</v6Lang>
|
||||
<v6LangP>0</v6LangP>
|
||||
<vShortEn>2</vShortEn>
|
||||
<vShortWch>2</vShortWch>
|
||||
<v6Lto>2</v6Lto>
|
||||
<v6WtE>2</v6WtE>
|
||||
<v6Rtti>2</v6Rtti>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
<Undefine></Undefine>
|
||||
<IncludePath></IncludePath>
|
||||
</VariousControls>
|
||||
</Cads>
|
||||
</FileArmAds>
|
||||
</FileOption>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>if_rtt.c</FileName>
|
||||
@@ -2279,7 +2328,7 @@
|
||||
<NoWarn>2</NoWarn>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<useXO>2</useXO>
|
||||
<ClangAsOpt>0</ClangAsOpt>
|
||||
<uClangAs>2</uClangAs>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
@@ -3203,7 +3252,7 @@
|
||||
<NoWarn>2</NoWarn>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<useXO>2</useXO>
|
||||
<ClangAsOpt>0</ClangAsOpt>
|
||||
<uClangAs>2</uClangAs>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
@@ -3297,7 +3346,7 @@
|
||||
<NoWarn>2</NoWarn>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<useXO>2</useXO>
|
||||
<ClangAsOpt>0</ClangAsOpt>
|
||||
<uClangAs>2</uClangAs>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
@@ -4014,7 +4063,7 @@
|
||||
<NoWarn>2</NoWarn>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<useXO>2</useXO>
|
||||
<ClangAsOpt>0</ClangAsOpt>
|
||||
<uClangAs>2</uClangAs>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
@@ -4168,7 +4217,7 @@
|
||||
<NoWarn>2</NoWarn>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<useXO>2</useXO>
|
||||
<ClangAsOpt>0</ClangAsOpt>
|
||||
<uClangAs>2</uClangAs>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
@@ -4247,7 +4296,7 @@
|
||||
<NoWarn>2</NoWarn>
|
||||
<uSurpInc>2</uSurpInc>
|
||||
<useXO>2</useXO>
|
||||
<ClangAsOpt>0</ClangAsOpt>
|
||||
<uClangAs>2</uClangAs>
|
||||
<VariousControls>
|
||||
<MiscControls></MiscControls>
|
||||
<Define></Define>
|
||||
|
785
python/file/EX_Coder_Test_2023-07-7.json
Normal file
785
python/file/EX_Coder_Test_2023-07-7.json
Normal file
@@ -0,0 +1,785 @@
|
||||
{
|
||||
"PlanID": 48631940,
|
||||
"PlanBrief": "模拟工厂注码",
|
||||
"CheckSoftVersion": [
|
||||
1
|
||||
],
|
||||
"CheckHardVersion": [
|
||||
1
|
||||
],
|
||||
"TimeOutS": 4,
|
||||
"TimeOutM": 10,
|
||||
"TimeOutUI": 12,
|
||||
"TaskIDMax": 26,
|
||||
"TaskArray": [
|
||||
{
|
||||
"TaskID": 0,
|
||||
"TaskBrief": "电源准备",
|
||||
"TaskIndex": 0,
|
||||
"ParamCount": 1,
|
||||
"ParamInfo": [
|
||||
"预设电压1"
|
||||
],
|
||||
"ParamVal": [
|
||||
88
|
||||
],
|
||||
"TestStandard": [],
|
||||
"ReturnCount": 0,
|
||||
"ReturnInfo": [],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 254,
|
||||
"ResultErrCode": [],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 1,
|
||||
"TaskBrief": "上电充能",
|
||||
"TaskIndex": 1,
|
||||
"ParamCount": 3,
|
||||
"ParamInfo": [
|
||||
"总线电压",
|
||||
"采样超时0.1ms",
|
||||
"计时启停ADC"
|
||||
],
|
||||
"ParamVal": [
|
||||
88,
|
||||
5000,
|
||||
400
|
||||
],
|
||||
"TestStandard": [
|
||||
{
|
||||
"Max": 95,
|
||||
"Min": 80
|
||||
},
|
||||
{
|
||||
"Max": 800,
|
||||
"Min": 100
|
||||
}
|
||||
],
|
||||
"ReturnCount": 2,
|
||||
"ReturnInfo": [
|
||||
"总线电压",
|
||||
"大于启停的时间"
|
||||
],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 254,
|
||||
"ResultErrCode": [
|
||||
23,
|
||||
22
|
||||
],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 5,
|
||||
"TaskBrief": "写配置参数",
|
||||
"TaskIndex": 2,
|
||||
"ParamCount": 4,
|
||||
"ParamInfo": [
|
||||
"UID长度",
|
||||
"密码长度",
|
||||
"电流挡位",
|
||||
"版本号"
|
||||
],
|
||||
"ParamVal": [
|
||||
8,
|
||||
4,
|
||||
0,
|
||||
1
|
||||
],
|
||||
"TestStandard": [],
|
||||
"ReturnCount": 0,
|
||||
"ReturnInfo": [],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 28,
|
||||
"ResultErrCode": [],
|
||||
"RetryCount": 1
|
||||
},
|
||||
{
|
||||
"TaskID": 32,
|
||||
"TaskBrief": "加载配置",
|
||||
"TaskIndex": 3,
|
||||
"ParamCount": 0,
|
||||
"ParamInfo": [],
|
||||
"ParamVal": [],
|
||||
"TestStandard": [
|
||||
{
|
||||
"Max": 8,
|
||||
"Min": 8
|
||||
},
|
||||
{
|
||||
"Max": 4,
|
||||
"Min": 4
|
||||
},
|
||||
{
|
||||
"Max": 1,
|
||||
"Min": 1
|
||||
}
|
||||
],
|
||||
"ReturnCount": 3,
|
||||
"ReturnInfo": [
|
||||
"UID长度",
|
||||
"密码长度",
|
||||
"版本号"
|
||||
],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 29,
|
||||
"ResultErrCode": [
|
||||
29,
|
||||
29,
|
||||
29,
|
||||
255
|
||||
],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 3,
|
||||
"TaskBrief": "获取总线电流(0.1uA)",
|
||||
"TaskIndex": 4,
|
||||
"ParamCount": 0,
|
||||
"ParamInfo": [],
|
||||
"ParamVal": [],
|
||||
"TestStandard": [
|
||||
{
|
||||
"Max": 400,
|
||||
"Min": 120
|
||||
},
|
||||
{
|
||||
"Max": 400,
|
||||
"Min": 120
|
||||
}
|
||||
],
|
||||
"ReturnCount": 2,
|
||||
"ReturnInfo": [
|
||||
"总线正电流",
|
||||
"总线反电流"
|
||||
],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 254,
|
||||
"ResultErrCode": [
|
||||
27,
|
||||
27
|
||||
],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 4,
|
||||
"TaskBrief": "扫描UID",
|
||||
"TaskIndex": 5,
|
||||
"ParamCount": 2,
|
||||
"ParamInfo": [
|
||||
"UID长度",
|
||||
"使1/失0UID对比"
|
||||
],
|
||||
"ParamVal": [
|
||||
8,
|
||||
0
|
||||
],
|
||||
"TestStandard": [],
|
||||
"ReturnCount": 0,
|
||||
"ReturnInfo": [],
|
||||
"ErrJumpTo": 14,
|
||||
"ExecuteErrCode": 24,
|
||||
"ResultErrCode": [],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 11,
|
||||
"TaskBrief": "桥丝检测",
|
||||
"TaskIndex": 6,
|
||||
"ParamCount": 0,
|
||||
"ParamInfo": [],
|
||||
"ParamVal": [],
|
||||
"TestStandard": [
|
||||
{
|
||||
"Max": 240,
|
||||
"Min": 0
|
||||
}
|
||||
],
|
||||
"ReturnCount": 1,
|
||||
"ReturnInfo": [
|
||||
"桥丝ADC"
|
||||
],
|
||||
"ErrJumpTo": 14,
|
||||
"ExecuteErrCode": 30,
|
||||
"ResultErrCode": [
|
||||
30
|
||||
],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 8,
|
||||
"TaskBrief": "充能统计",
|
||||
"TaskIndex": 7,
|
||||
"ParamCount": 5,
|
||||
"ParamInfo": [
|
||||
"充电挡位",
|
||||
"统计超时",
|
||||
"电流判线AD",
|
||||
"充电结束值0.1uA",
|
||||
"充电超时0.1S"
|
||||
],
|
||||
"ParamVal": [
|
||||
34,
|
||||
5000,
|
||||
100,
|
||||
600,
|
||||
5
|
||||
],
|
||||
"TestStandard": [
|
||||
{
|
||||
"Max": 4000,
|
||||
"Min": 1000
|
||||
},
|
||||
{
|
||||
"Max": 600,
|
||||
"Min": 120
|
||||
},
|
||||
{
|
||||
"Max": 100,
|
||||
"Min": 10
|
||||
}
|
||||
],
|
||||
"ReturnCount": 3,
|
||||
"ReturnInfo": [
|
||||
"充能值0.1ms",
|
||||
"充末电流0.1uA",
|
||||
"最大充电电流0.1mA"
|
||||
],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 254,
|
||||
"ResultErrCode": [
|
||||
34,
|
||||
35,
|
||||
32,
|
||||
255
|
||||
],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 24,
|
||||
"TaskBrief": "状态码检测",
|
||||
"TaskIndex": 8,
|
||||
"ParamCount": 2,
|
||||
"ParamInfo": [
|
||||
"比较掩码",
|
||||
"比较位"
|
||||
],
|
||||
"ParamVal": [
|
||||
130,
|
||||
0
|
||||
],
|
||||
"TestStandard": [
|
||||
{
|
||||
"Max": 255,
|
||||
"Min": 0
|
||||
}
|
||||
],
|
||||
"ReturnCount": 1,
|
||||
"ReturnInfo": [
|
||||
"状态值"
|
||||
],
|
||||
"ErrJumpTo": 14,
|
||||
"ExecuteErrCode": 46,
|
||||
"ResultErrCode": [
|
||||
46
|
||||
],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 26,
|
||||
"TaskBrief": "复位",
|
||||
"TaskIndex": 9,
|
||||
"ParamCount": 0,
|
||||
"ParamInfo": [],
|
||||
"ParamVal": [],
|
||||
"TestStandard": [],
|
||||
"ReturnCount": 0,
|
||||
"ReturnInfo": [],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 254,
|
||||
"ResultErrCode": [],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 9,
|
||||
"TaskBrief": "设置现场值",
|
||||
"TaskIndex": 10,
|
||||
"ParamCount": 3,
|
||||
"ParamInfo": [
|
||||
"编号",
|
||||
"延时",
|
||||
"孔号"
|
||||
],
|
||||
"ParamVal": [
|
||||
20,
|
||||
100,
|
||||
20
|
||||
],
|
||||
"TestStandard": [],
|
||||
"ReturnCount": 0,
|
||||
"ReturnInfo": [],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 254,
|
||||
"ResultErrCode": [],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 19,
|
||||
"TaskBrief": "时钟校准",
|
||||
"TaskIndex": 11,
|
||||
"ParamCount": 3,
|
||||
"ParamInfo": [
|
||||
" 1快速0全",
|
||||
"校准周期",
|
||||
"校准时长"
|
||||
],
|
||||
"ParamVal": [
|
||||
0,
|
||||
1000,
|
||||
110
|
||||
],
|
||||
"TestStandard": [],
|
||||
"ReturnCount": 0,
|
||||
"ReturnInfo": [],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 254,
|
||||
"ResultErrCode": [],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 24,
|
||||
"TaskBrief": "状态码检测",
|
||||
"TaskIndex": 12,
|
||||
"ParamCount": 2,
|
||||
"ParamInfo": [
|
||||
"比较掩码",
|
||||
"比较位"
|
||||
],
|
||||
"ParamVal": [
|
||||
10,
|
||||
10
|
||||
],
|
||||
"TestStandard": [
|
||||
{
|
||||
"Max": 255,
|
||||
"Min": 0
|
||||
}
|
||||
],
|
||||
"ReturnCount": 1,
|
||||
"ReturnInfo": [
|
||||
"状态值"
|
||||
],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 46,
|
||||
"ResultErrCode": [
|
||||
255
|
||||
],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 10,
|
||||
"TaskBrief": "比对现场值",
|
||||
"TaskIndex": 13,
|
||||
"ParamCount": 4,
|
||||
"ParamInfo": [
|
||||
"编号",
|
||||
"延时",
|
||||
"孔号",
|
||||
"1使/0失反馈采集"
|
||||
],
|
||||
"ParamVal": [
|
||||
20,
|
||||
100,
|
||||
20,
|
||||
1
|
||||
],
|
||||
"TestStandard": [
|
||||
{
|
||||
"Max": 1700,
|
||||
"Min": 800
|
||||
},
|
||||
{
|
||||
"Max": 400,
|
||||
"Min": 150
|
||||
}
|
||||
],
|
||||
"ReturnCount": 2,
|
||||
"ReturnInfo": [
|
||||
"最大反馈电流",
|
||||
"最大反馈时间"
|
||||
],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 255,
|
||||
"ResultErrCode": [
|
||||
43,
|
||||
44,
|
||||
255,
|
||||
255
|
||||
],
|
||||
"RetryCount": 0
|
||||
},
|
||||
{
|
||||
"TaskID": 27,
|
||||
"TaskBrief": "关总线",
|
||||
"TaskIndex": 14,
|
||||
"ParamCount": 0,
|
||||
"ParamInfo": [],
|
||||
"ParamVal": [],
|
||||
"TestStandard": [],
|
||||
"ReturnCount": 0,
|
||||
"ReturnInfo": [],
|
||||
"ErrJumpTo": 255,
|
||||
"ExecuteErrCode": 254,
|
||||
"ResultErrCode": [],
|
||||
"RetryCount": 0
|
||||
}
|
||||
],
|
||||
"MajorErrInfo": [
|
||||
{
|
||||
"Info": "执行成功",
|
||||
"MajorErrCode": 0,
|
||||
"SubErrCode": []
|
||||
},
|
||||
{
|
||||
"Info": "检测器异常",
|
||||
"MajorErrCode": 1,
|
||||
"SubErrCode": [
|
||||
21,
|
||||
23,
|
||||
254
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "主电容异常",
|
||||
"MajorErrCode": 2,
|
||||
"SubErrCode": [
|
||||
30,
|
||||
31,
|
||||
32,
|
||||
33,
|
||||
34,
|
||||
35,
|
||||
42
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "接触异常",
|
||||
"MajorErrCode": 3,
|
||||
"SubErrCode": [
|
||||
27
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "桥丝阻值异常",
|
||||
"MajorErrCode": 4,
|
||||
"SubErrCode": [
|
||||
30,
|
||||
41,
|
||||
42
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "芯片异常",
|
||||
"MajorErrCode": 5,
|
||||
"SubErrCode": [
|
||||
22,
|
||||
24,
|
||||
25,
|
||||
26,
|
||||
27,
|
||||
28,
|
||||
29,
|
||||
30,
|
||||
32,
|
||||
33,
|
||||
35,
|
||||
36,
|
||||
37,
|
||||
38,
|
||||
39,
|
||||
40,
|
||||
41,
|
||||
42,
|
||||
43,
|
||||
44,
|
||||
45
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "其他异常",
|
||||
"MajorErrCode": 20,
|
||||
"SubErrCode": [
|
||||
255
|
||||
]
|
||||
}
|
||||
],
|
||||
"SubErrInfo": [
|
||||
{
|
||||
"Info": "预设电压异常",
|
||||
"ErrCode": 21,
|
||||
"ErrFac": [
|
||||
"1.检测小板电压调节失效,存在无法设置的电压"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "上电充能错误",
|
||||
"ErrCode": 22,
|
||||
"ErrFac": [
|
||||
"1.检测器输出电压异常",
|
||||
"2.模块上电容性负载大",
|
||||
"3.模块基本电路异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "电压设置异常",
|
||||
"ErrCode": 23,
|
||||
"ErrFac": [
|
||||
"1.检测小板输出电压异常",
|
||||
"2.外部短路,导致过流保护"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "UID扫描错误",
|
||||
"ErrCode": 24,
|
||||
"ErrFac": [
|
||||
"1.芯片通信异常",
|
||||
"2.芯片内部存储的UID与参考UID不一致"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "标记区验证错误",
|
||||
"ErrCode": 25,
|
||||
"ErrFac": [
|
||||
"1.验证标志位没有置位(检测流程出错",
|
||||
"2.芯片数据被擦写",
|
||||
"3.通信异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "通讯后电流错误",
|
||||
"ErrCode": 26,
|
||||
"ErrFac": [
|
||||
"1.芯片执行指令异常",
|
||||
"2.芯片通信接收功耗异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "基本电流错误",
|
||||
"ErrCode": 27,
|
||||
"ErrFac": [
|
||||
"1.芯片的静态功耗异常",
|
||||
"2.检测器输出电压异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "配置错误",
|
||||
"ErrCode": 28,
|
||||
"ErrFac": [
|
||||
"1.芯片错误",
|
||||
"2.通信异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "验证配置",
|
||||
"ErrCode": 29,
|
||||
"ErrFac": [
|
||||
"1.芯片内部数据与检测数据不一致,数据丢失",
|
||||
"2.芯片通信异常",
|
||||
"3.芯片数据被改写"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "桥丝错误",
|
||||
"ErrCode": 30,
|
||||
"ErrFac": [
|
||||
"1.桥丝开路,或阻值异常",
|
||||
"2.芯片异常,检测不准"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "高压充能错误",
|
||||
"ErrCode": 31,
|
||||
"ErrFac": [
|
||||
"1.电容漏流",
|
||||
"2.电容容值偏低或偏大",
|
||||
"3.芯片充电漏流,充电回路或起爆回路",
|
||||
"4.芯片高压基本电流偏大",
|
||||
"5.芯片异常,充电电流偏小"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "充电电流错误",
|
||||
"ErrCode": 32,
|
||||
"ErrFac": [
|
||||
"1.芯片异常,充电电流符合指标"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "高压充末电流错误",
|
||||
"ErrCode": 33,
|
||||
"ErrFac": [
|
||||
"1.电容漏流",
|
||||
"2.芯片充电回路漏流或起爆回路漏流",
|
||||
"3.芯片高压基本电流偏大"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "低压充电能量错误",
|
||||
"ErrCode": 34,
|
||||
"ErrFac": [
|
||||
"1.电容漏流",
|
||||
"2.电容容值偏低或偏大",
|
||||
"3.芯片充电漏流,充电回路或起爆回路",
|
||||
"4.芯片低压基本电流偏大",
|
||||
"5.芯片异常,充电电流偏小",
|
||||
"6.高压充电后不能放电"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "低压充末电流错误",
|
||||
"ErrCode": 35,
|
||||
"ErrFac": [
|
||||
"1.电容漏流",
|
||||
"2.芯片充电回路漏流或起爆回路漏流",
|
||||
"3.芯片基本功耗偏大"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "写延时错误",
|
||||
"ErrCode": 36,
|
||||
"ErrFac": [
|
||||
"1.芯片设置延时功能异常",
|
||||
"2.通信异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "读延时错误",
|
||||
"ErrCode": 37,
|
||||
"ErrFac": [
|
||||
"1.芯片读延时功能异常",
|
||||
"2.通信异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "芯片程测错误",
|
||||
"ErrCode": 38,
|
||||
"ErrFac": [
|
||||
"1.芯片成测标记错误,非全FFFF",
|
||||
"2.通信异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "时钟校准错误",
|
||||
"ErrCode": 39,
|
||||
"ErrFac": [
|
||||
"1.检测器命令执行异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "写工厂信息错误",
|
||||
"ErrCode": 40,
|
||||
"ErrFac": [
|
||||
"1.OTP数据写入出错",
|
||||
"2.通信异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "模拟起爆错误",
|
||||
"ErrCode": 41,
|
||||
"ErrFac": [
|
||||
"1.发送起爆指令后无应答"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "芯片状态码异常",
|
||||
"ErrCode": 42,
|
||||
"ErrFac": [
|
||||
"1.状态码与设置的掩码不匹配",
|
||||
"2.通讯异常"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "反馈电流错误",
|
||||
"ErrCode": 43,
|
||||
"ErrFac": [
|
||||
"1.芯片异常,反馈电流不达标",
|
||||
"2.检测器异常,采集电路不准"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "反码时长错误",
|
||||
"ErrCode": 44,
|
||||
"ErrFac": [
|
||||
"1.芯片异常,通讯无反码",
|
||||
"2.通讯反码电流低,不能识别"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "复位放电错误",
|
||||
"ErrCode": 45,
|
||||
"ErrFac": [
|
||||
"1.高压充电后降压通讯异常",
|
||||
"2.芯片复位不能正常放电",
|
||||
"3.芯片异常,指令不执行"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "状态标志错误",
|
||||
"ErrCode": 46,
|
||||
"ErrFac": [
|
||||
"1.置位标志命令未执行",
|
||||
"2.置位命令参数错误",
|
||||
"3.电容电压检测失败",
|
||||
"4,芯片异常,状态标志不能置位"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "三码验证错误",
|
||||
"ErrCode": 47,
|
||||
"ErrFac": [
|
||||
"1.扫描获取的UID和写入的UID不一致",
|
||||
"2.密码不一致,验证标志位未置位",
|
||||
"3.芯片状态标志异常,不能置位"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "写管壳码",
|
||||
"ErrCode": 48,
|
||||
"ErrFac": [
|
||||
"1.缓存空间数据验证错误",
|
||||
"2.指令执行错误,未收到应答",
|
||||
"3.芯片功能异常,指令执行失败"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "写密码",
|
||||
"ErrCode": 49,
|
||||
"ErrFac": [
|
||||
"1.缓存空间数据验证错误",
|
||||
"2.指令执行错误,未收到应答",
|
||||
"3.芯片功能异常,指令执行失败"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "写现场值错误",
|
||||
"ErrCode": 50,
|
||||
"ErrFac": [
|
||||
"1.UID不匹配",
|
||||
"2.芯片内部的配置未设置正确",
|
||||
"3.芯片功能异常,通信无反馈"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "检测器执行异常",
|
||||
"ErrCode": 254,
|
||||
"ErrFac": [
|
||||
"广播类命令执行错误"
|
||||
]
|
||||
},
|
||||
{
|
||||
"Info": "返回参数判断",
|
||||
"ErrCode": 255,
|
||||
"ErrFac": []
|
||||
}
|
||||
]
|
||||
}
|
BIN
python/file/EX_Coder_Test_2023-07-7.xlsx
Normal file
BIN
python/file/EX_Coder_Test_2023-07-7.xlsx
Normal file
Binary file not shown.
@@ -146,10 +146,9 @@ def arr_from_int(num:int):
|
||||
# 提取方案中的范围数据, 先max后min
|
||||
def scheme_get_task_range(j:json):
|
||||
t=bytearray()
|
||||
return_count=j["ReturnCount"]
|
||||
t+=j["TaskID"]
|
||||
t+=j["TaskIndex"]
|
||||
t+=arr_from_int(return_count)
|
||||
t+=arr_from_int(j["TaskID"])
|
||||
t+=arr_from_int(j["TaskIndex"])
|
||||
t+=arr_from_int(j["ReturnCount"])
|
||||
t+=arr_from_int(j["ExecuteErrCode"])
|
||||
index=0
|
||||
for i in j["TestStandard"]:
|
||||
@@ -438,19 +437,33 @@ class protu(QObject):
|
||||
# print("len=",len(d),d.hex(","))
|
||||
# send_file("COM5",0x32,f.name.split('/')[-1],f.read())
|
||||
|
||||
|
||||
|
||||
def int2str(num:int):
|
||||
s=str(num//100)
|
||||
s=s+str(num%100//10)
|
||||
s=s+str(num%10)
|
||||
return s
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
u=protu()
|
||||
# u.init("utcp:7777")
|
||||
# u.send_file(0xee,"file/JQ_JCXB_V54.bin")
|
||||
# u.send_file(0xed,"../Objects/checker_gen1_app_20230602.bin")
|
||||
u.cmd=0x34
|
||||
print(u.encode(bytearray([0x0a,0x00])).hex(' '))
|
||||
# with open("file/EX三码绑定测试2023-07-3.json","rb") as f:
|
||||
u.cmd=0x30
|
||||
u.cmd_no=0x15|(0xaf<<8)
|
||||
print(u.encode(bytearray([0x00])).hex(' '))
|
||||
# with open("file/EX_Coder_Test_2023-07-6.json","rb") as f:
|
||||
# json_obj=json.loads(f.read())
|
||||
# d=scheme_to_byte(json_obj)
|
||||
# print("len=",len(d),d.hex(","))
|
||||
# d+=scheme_to_host(json_obj)
|
||||
|
||||
print(int2str(20))
|
||||
s="{d:03d}".format(d=2)
|
||||
print(s)
|
||||
|
||||
|
||||
# 开始检测
|
||||
# 59 6d 03 00 30 00 00 60 0f
|
||||
|
@@ -138,4 +138,6 @@
|
||||
添加错误判断,未完成
|
||||
2023.7.6
|
||||
赋码仪添加错误判断,管壳码有0字节则不注码,直接返回失败
|
||||
|
||||
2023.7.7
|
||||
boot没有同步app编译,升级app会导致之后添加的配置参数丢失
|
||||
添加管壳码全'0'判断
|
@@ -159,20 +159,20 @@ uint8_t coder_judge(const uint8_t *data)
|
||||
}
|
||||
|
||||
// 检测电流
|
||||
TASK_FIND_NEXT(4);
|
||||
TASK_FIND_NEXT(3);
|
||||
temp=TASK_DATA(0);
|
||||
temp2=TASK_DATA(1);
|
||||
if((temp<10)&&(temp2<10))
|
||||
if((temp<100)&&(temp2<100))
|
||||
{
|
||||
// 接触异常
|
||||
return 3;
|
||||
}
|
||||
else if(((temp>task->range[0].max)&&(temp<1500))||
|
||||
((temp2>task->range[0].max)&&(temp2<1500)))
|
||||
else if(((temp>task->range[0].max)&&(temp<800))||
|
||||
((temp2>task->range[0].max)&&(temp2<800)))
|
||||
{
|
||||
// 过流
|
||||
return 7;
|
||||
}else if((temp>1500)&&(temp2>1500))
|
||||
}else if((temp>800)&&(temp2>800))
|
||||
{
|
||||
// 短路
|
||||
return 8;
|
||||
@@ -180,7 +180,7 @@ uint8_t coder_judge(const uint8_t *data)
|
||||
|
||||
|
||||
// 检测uid
|
||||
TASK_FIND_NEXT(5);
|
||||
TASK_FIND_NEXT(4);
|
||||
if(get_ack(data,task->taskindex))
|
||||
{
|
||||
// 芯片错误
|
||||
@@ -188,7 +188,7 @@ uint8_t coder_judge(const uint8_t *data)
|
||||
}
|
||||
|
||||
// 检测桥丝
|
||||
TASK_FIND_NEXT(6);
|
||||
TASK_FIND_NEXT(11);
|
||||
temp=TASK_DATA(0);
|
||||
if((temp<task->range[0].min)||(temp>task->range[0].max))
|
||||
{
|
||||
|
@@ -87,6 +87,8 @@ int check_shell_code(const char *shell_code)
|
||||
if(shell_code[i]==0)
|
||||
return 0;
|
||||
}
|
||||
if(strncmp("0000000000000",shell_code,13)==0)
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
|
||||
|
||||
|
||||
#define BUILD_DATE "2023-07-06 22:57:16"
|
||||
#define BUILD_DATE "2023-07-07 11:16:27"
|
||||
#define SOFT_VERSION "0.10"
|
||||
|
||||
|
||||
|
@@ -113,7 +113,7 @@ static int scheme_info(list_def *argv)
|
||||
for(int i=0;i<s->task_num;i++)
|
||||
{
|
||||
t=&s->task[i];
|
||||
cmd_print(" task:%02d err:%02x",i,t->err);
|
||||
cmd_print(" task:%02d id:%02d err:%02x",t->taskindex,t->taskid,t->err);
|
||||
for(int j=0;j<t->item_num;j++)
|
||||
{
|
||||
cmd_print(" max:%5d, min:%5d err:%02x %s",t->range[j].max,t->range[j].min,
|
||||
|
@@ -68,6 +68,7 @@ static void request_check(void *p)
|
||||
{
|
||||
const sys_param_def *par=sys_param();
|
||||
array_def *d=arr_creat();
|
||||
arr_append(d,0);
|
||||
emit key_send_signal(p,0x37,arr_temp(d));
|
||||
//DBG_LOG("tcp liver:%s",str_temp(arr_string(d)));
|
||||
}
|
||||
|
@@ -75,7 +75,6 @@ static void write_uid_upmit(write_uid_def *w)
|
||||
}
|
||||
}
|
||||
emit tran_send_signal(w->u.p,0x82,arr_temp(a));
|
||||
tran_set_busy(w->u.p,0);
|
||||
g_self.step=0;
|
||||
// 把命令字改为0x82用于接收主机应答
|
||||
w->u.cmd=0x82;
|
||||
@@ -83,6 +82,25 @@ static void write_uid_upmit(write_uid_def *w)
|
||||
|
||||
|
||||
|
||||
// 填充注码结果
|
||||
static void write_uid_fillret(write_uid_def *w,int addr,int ack)
|
||||
{
|
||||
addr-=1;
|
||||
uint8_t *d=&w->ack[(addr)*39];
|
||||
w->ack_num++;
|
||||
d[0]=addr+slave_addr_off();
|
||||
d[1]=ack;
|
||||
memcpy(&d[2],w->item[addr].shell_code,13);
|
||||
memcpy(&d[2+13],w->item[addr].uid_code,16);
|
||||
memcpy(&d[2+13+16],w->item[addr].password,8);
|
||||
if(w->ack_num>=10)
|
||||
{
|
||||
write_uid_upmit(w);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 注码完成
|
||||
static void write_uid_end(ucport_def *u,port_mcu *src,void *data,int ack,char *err_str)
|
||||
{
|
||||
@@ -92,19 +110,7 @@ static void write_uid_end(ucport_def *u,port_mcu *src,void *data,int ack,char *e
|
||||
DBG_WARN("addr err:%d",addr);
|
||||
return;
|
||||
}
|
||||
addr-=1;
|
||||
|
||||
uint8_t *d=&w->ack[(addr)*39];
|
||||
w->ack_num++;
|
||||
d[0]=addr+slave_addr_off();
|
||||
d[1]=ack;
|
||||
memcpy(&d[2],w->item[addr].shell_code,13);
|
||||
memcpy(&d[2+13],w->item[addr].uid_code,16);
|
||||
memcpy(&d[2+13+16],w->item[addr].password,8);
|
||||
if(w->ack_num>=10)
|
||||
{
|
||||
write_uid_upmit(w);
|
||||
}
|
||||
write_uid_fillret(w,addr,ack);
|
||||
}
|
||||
|
||||
|
||||
@@ -137,6 +143,7 @@ static void write_del(ucport_def *u)
|
||||
static int write_uid_dolater(ucport_def *u,uint8_t cmd,array_def *data,char *err_str)
|
||||
{
|
||||
DBG_LOG("recv write_uid end signal.");
|
||||
tran_set_busy(u->p,0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -191,11 +198,7 @@ static ucport_def *write_uid(tran_def *t, uint8_t cmd,array_def *data)
|
||||
port_start(mcu,code_creat(8,4,u->item[i].uid_pw_hex));
|
||||
}else{
|
||||
// 管壳码无效,不注码,此时默认已ack
|
||||
u->ack_num++;
|
||||
if(u->ack_num>=10)
|
||||
{
|
||||
write_uid_upmit(u);
|
||||
}
|
||||
write_uid_fillret(u,i+1,0xff);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -372,7 +375,7 @@ static void check_end(ucport_def *u,port_mcu *src,void *data,int ack,char *err_s
|
||||
arr_append(a,w->type);
|
||||
arr_appends(a,w->ack,(6)*10);
|
||||
emit tran_send_signal(w->u.p,0x81,arr_temp(a));
|
||||
tran_set_busy(w->u.p,0);
|
||||
//tran_set_busy(w->u.p,0);
|
||||
// 把命令字改为0x81用于接收主机应答
|
||||
w->u.cmd=0x81;
|
||||
g_self.step=1;
|
||||
@@ -408,6 +411,7 @@ static void check_del(ucport_def *u)
|
||||
static int check_dolater(ucport_def *u,uint8_t cmd,array_def *data,char *err_str)
|
||||
{
|
||||
DBG_LOG("recv check end signal.");
|
||||
tran_set_busy(u->p,0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user