#ifndef EWChecker_h__ #define EWChecker_h__ #include "base/define.h" #include "basechecker.h" #include "stdint.h" extern CheckerTask ewtaskArray[CHECKER_MAXID_COUNT] ; /* @brief 统计模块的上电充能,具有电压设置功能,采集档位 R10_0p1mA_1p6mA_UC @param0 总线电压 @param1 超时时间 0.1ms @param2 充电结束时的AD值 @rtv0 返回总线电压 @rtv1 返回总线电流低于设置AD值的时间 */ void EW_Test_PowerOn(void); /* @brief 设置总线电压 @param1 总线电压 @rtv1 总线电压 */ void EW_Test_SetBusV(void); /* @brief 测量总线基本电压 @rtv1 返回总线电流 单位0.1uA */ void EW_Test_BaseCur(void); /* @breif 使能MTP擦写 @param 0 失能 1 使能 */ void EW_Test_EnMTP(void); /* @brief 扫描总线上的电子模块 1发 @param0 UID长度 @param1 使能或失能 UID对比 @param2 使能反馈监控 @rtv1 最大反馈电流 @rtv2 最大反馈时间 @rtv3 最小反馈电流 @rtv4 最小反馈时间 @rtv5 UID 2Bytes @rtv6 UID 2Bytes @rtv7 UID 2Bytes @rtv8 UID 2Bytes */ void EW_Test_ReadUID(void); /* @brief 写模块运行时的配置参数 @param0 起爆MOS选择 0内部/1外部 @param1 通信信号源 0:rxh 1:rxl 2:rx @param2 通信模式 1:差分 2:单端 @param3 起爆日志标记周期 0:不标记 1:5ms 2:10ms 3:20ms 4:50ms 5:10ms 6:150ms 7:200ms @param4 UID长度 @param5 密码长度 @param6 模块版本 */ void EW_Test_SetRunCfg(void); /* @brief 验证模组运行时配置 @param0 起爆MOS选择 0内部/1外部 @param1 通信信号源 0:rxh 1:rxl 2:rx @param2 通信模式 1:差分 2:单端 @param3 起爆日志标记周期 0:不标记 1:5ms 2:10ms 3:20ms 4:50ms 5:10ms 6:150ms 7:200ms @param4 UID长度 @param5 密码长度 @param6 模块版本 */ void EW_Test_CheckRunCfg(void); /* @brief 验证配置 @param0 配置验证掩码低2bytes @param1 配置验证掩码高2bytes @param2 配置验证比较低2bytes @param3 配置验证比较高2bytes */ void EW_Test_VerifyRunCfg(void); /* @brief 写三码数据测试 */ void EW_Test_WriteThreedCode(void); /* @breif 验证测试的三码数据 */ void EW_Test_VerifyThreedCode(void); /* @brief 自检 @param 自检模式 @param1 自检时间ms @rtv 自检模式0x08的回读数据 */ void EW_Test_CheckSelf(void); /* @brief 状态码比较 @param0 掩码参数 @param1 比较结果值 @rtv0 状态值低2字节 @rtv1 状态值高2字节 */ void EW_Test_CheckeState(void); /* @brief 充电 @param0 充电模式 @param1 充电分组 */ void EW_Test_Charge(void); /* @brief 充能统计 @param0 充电挡位 @param1 充电电流判线值,AD值 @param2 充电末电流结束值,单位0.1uA @param3 充电最长时间,单位100ms @param4 充电高压保持时间,单位0.1s @rtv0 充能值 单位0.1ms @rtv1 充末电流 单位0.1uA @rtv2 充电最大电流 单位0.1Ma @rtv3 充电抖动幅值 adv */ void EW_Test_ChgEnergy(void); /* @brief 放电 */ void EW_Test_DisChg(void); /* @brief 写延时 @param0 写延时 */ void EW_Test_SetDelay(void); /* @brief 读延时 */ void EW_Test_ReadDelay(void); /* @brief 时钟校准 @param 校准周期 @param 校准脉冲数据 @rtv 校准值,真实值的4倍 */ void EW_Test_ClkAmend(void); /* @brief 设置通信地址 @param0 通信地址 @param1 设置模式 0:系统 1:UID配置地址 2:快速配置 @param2 延时 @rtv 延时 */ void EW_Test_SetAddr(void); /* @brief 状态巡检,测试系统只能巡检一个地址,起始地址应该大于1,结束地址小于1024,两个地址差值应该小于256 @param0 起始地址 @param1 结束地址 @param2 状态码 @rtv 地址结果 */ void EW_Test_Inspect(void); /* @brief 起爆使能 */ void EW_Test_EnBoom(void); /* @brief 起爆 @param0 采样超时 0.01ms @param1 起爆电流AD @param2 延迟采样ms @rtv 起爆延时 */ void EW_Test_Boom(void); /* @brief 运行BootLoader @param0 0 立即跳转 1 等待升级 */ void EW_Test_RunBoot(void); /* @brief 缓存信息写入MTP @param0 MTP地址 @param1 缓存地址 @param2 写入长度 */ void EW_Test_WriteFacBuff(void); /* @brief 验证OTP内部与缓存比较 @param0 OTP起始地址 @param1 缓存首地址 @param2 验证长度 */ void EW_Test_VerifyFacBuff(void); /* @brief 关闭总线 */ void EW_Test_PowerOFF(void); #endif