9ceb218f80
Co-authored-by: Cursor <cursoragent@cursor.com>
370 lines
15 KiB
C
370 lines
15 KiB
C
#include "ui_info.h"
|
||
|
||
//迪文屏幕 仅支持GB2312格式的中文显示 因此特地保留本文件编码格式为GB2312 用于向屏幕发送中文信息
|
||
|
||
// const char p_null[] = "无";
|
||
// const char p_no_fault[] = "无故障";
|
||
// const char p_no_waring[] = "无告警";
|
||
// const char prompt[] = "请输入正确的充电密码!";
|
||
// const char p_free_mag[] = "费率";
|
||
// const char p_mag[] = "主板复归计数:";
|
||
|
||
//Пожалуйста, подождите !
|
||
//Please wait !
|
||
const char p_wait_mag[] = "Please wait !";
|
||
const char c_wait_mag[] = "请等待!!!";
|
||
//Время ожидания считывания карты истекло!
|
||
//Card swipe timeout !
|
||
const char p_card_timeout_mag[] = "Card swipe timeout !";
|
||
const char c_card_timeout_mag[] = "刷卡超时!!!";
|
||
|
||
#if 0
|
||
const static S_FAULT_INFO ui_fault_info[] =
|
||
{
|
||
|
||
//常规停止代码
|
||
{E_NORMAL_1000, "充满停止"},
|
||
{E_NORMAL_1001, "本地停止充电"},
|
||
{E_NORMAL_1002, "后台停止充电"},
|
||
{E_NORMAL_1003, "达到设置充电时长停止"},
|
||
{E_NORMAL_1004, "达到设置充电电量停止"},
|
||
{E_NORMAL_1005, "达到设置充电金额停止"},
|
||
{E_NORMAL_1006, "达到离线停机条件"},
|
||
{E_NORMAL_1007, "达到SOC终止条件停止"},
|
||
{E_NORMAL_1008, "用户拔枪停止"},
|
||
{E_NORMAL_1009, "APP停止充电"},
|
||
// {E_NORMAL_1010, "车端S2主动断开"},
|
||
{E_NORMAL_1011, "BMS停止充电"},
|
||
{E_NORMAL_1012, "账户余额不足"},
|
||
{E_NORMAL_1013, "预付金额不足"},
|
||
// {E_NORMAL_1014, "车辆S2闭合超时"},
|
||
//{E_NORMAL_1015, "充电中车辆S2断开超时"},
|
||
{E_NORMAL_1016, "达到涓流充电停机条件"},
|
||
|
||
//直流充电设备异常代码
|
||
{E_FAULT_13000, "交流输入断路器故障"},
|
||
{E_FAULT_13001, "避雷器故障"},
|
||
{E_FAULT_13002, "交流输入接触器粘连故障"},
|
||
{E_FAULT_13003, "交流输入接触器拒动/误动故障"},
|
||
{E_FAULT_13004, "直流输出接触器粘连故障"},
|
||
{E_FAULT_13005, "直流输出接触器拒动/误动故障"},
|
||
{E_FAULT_13006, "直流输出熔断器故障"},
|
||
{E_FAULT_13007, "辅助电源故障"},
|
||
{E_FAULT_13008, "泄放继电器拒动/误动故障"},
|
||
{E_FAULT_13009, "泄放继电器粘连"},
|
||
{E_FAULT_13010, "充电枪电子锁上锁故障"},
|
||
{E_FAULT_13011, "充电枪电子锁解锁故障"},
|
||
// {E_FAULT_13012, "PE 断线故障"},
|
||
{E_FAULT_13013, "充电接口过温故障"},
|
||
{E_FAULT_13014, "充电接口过温告警"},
|
||
{E_FAULT_13015, "控制导引电压异常"},
|
||
{E_FAULT_13016, "充电中车辆控制导引故障"},
|
||
{E_FAULT_13017, "急停"},
|
||
{E_FAULT_13018, "门禁"},
|
||
{E_FAULT_13019, "充电机柜门禁故障"},
|
||
{E_FAULT_13020, "功率控制模块故障"},
|
||
{E_FAULT_13021, "功率控制模块告警"},
|
||
{E_FAULT_13022, "功率控制模块通信故障"},
|
||
{E_FAULT_13023, "桥接接触器拒动/误动故障"},
|
||
{E_FAULT_13024, "桥接接触器粘连故障"},
|
||
|
||
// {E_FAULT_13025, "ESAM 故障"},
|
||
{E_FAULT_13026, "液冷油温过高"},
|
||
// {E_FAULT_13027, "充电桩过温故障( 可选)"},
|
||
// {E_FAULT_13028, "充电桩过温告警( 可选)"},
|
||
// {E_FAULT_13029, "充电机柜过温告警"},
|
||
// {E_FAULT_13030, "充电机柜过温故障"},
|
||
{E_FAULT_13031, "液冷报警"},
|
||
{E_FAULT_13032, "烟感报警"},
|
||
{E_FAULT_13033, "充电桩水浸故障"},
|
||
// {E_FAULT_13034, "充电机柜水浸故障"},
|
||
{E_FAULT_13035, "充电机环境湿度告警"},
|
||
// {E_FAULT_13036, "数据合法性校验失败"},
|
||
// {E_FAULT_13037, "充电控制器 版本校验 未完成"},
|
||
// {E_FAULT_13038, "充电控制器 下发充电参数 未完成"},
|
||
// {E_FAULT_13039, "充电桩暂停服务, 拒绝启动"},
|
||
{E_FAULT_13040, "上次充电完成未拔枪"},
|
||
// {E_FAULT_13041, "充电桩与车辆处于未连接状态,拒绝启动"},
|
||
{E_FAULT_13042, "绝缘监测故障"},
|
||
{E_FAULT_13043, "绝缘监测告警"},
|
||
// {E_FAULT_13044, "充电桩执行功率分配策略失败故障"},
|
||
// {E_FAULT_13045, "预留( 输入电压过压故障)"},
|
||
// {E_FAULT_13046, "预留( 输入电压欠压故障)"},
|
||
{E_FAULT_13047, "泄放回路故障"},
|
||
{E_FAULT_13048, "直流输出电压过压故障"},
|
||
{E_FAULT_13049, "直流输出电流过流故障"},
|
||
{E_FAULT_13050, "直流输出电压欠压故障"},
|
||
// {E_FAULT_13051, "无空闲模块可用( 限智能分配功率)"},
|
||
// {E_FAULT_13052, "电池反接故障"},
|
||
{E_FAULT_13053, "预充阶段调压失败"},
|
||
{E_FAULT_13054, "输出电流大于车辆需求电流"},
|
||
{E_FAULT_13055, "充电过程中功率控制器为非工作状态"},
|
||
{E_FAULT_13056, "电能计量异常"},
|
||
{E_FAULT_13057, "车辆鉴权码不一致"},
|
||
// {E_FAULT_13058, "未上送交易记录已满"},
|
||
// {E_FAULT_13059, "交易记录存储失败"},
|
||
// {E_FAULT_13060, "CAN 通讯版本校验异常"},
|
||
// {E_FAULT_13061, "进程运行异常"},
|
||
// {E_FAULT_13062, "程序文件校验失败"},
|
||
// {E_FAULT_13063, "程序文件损坏"},
|
||
{E_FAULT_13064, "非法 VIN"},
|
||
// {E_FAULT_13065, "非即插即充设备"},
|
||
// {E_FAULT_13066, "充电桩处于“暂停” 状态( 27930中的暂停状态)"},
|
||
{E_FAULT_13067, "即插即充鉴权失败"},
|
||
// {E_FAULT_13068, "充电桩充电中暂停超时( 27930中的暂停充电)"},
|
||
{E_FAULT_13069, "充电控制器通讯超时"},
|
||
{E_FAULT_13070, "读卡器通讯超时"},
|
||
{E_FAULT_13071, "电表通讯超时"},
|
||
{E_FAULT_13072, "两枪同充一车模式下充电控制器间通信超时"},
|
||
{E_FAULT_13074, "液冷通讯超时"},
|
||
// {E_FAULT_13073, "异常掉电"},
|
||
// {E_FAULT_13074, "预留"},
|
||
{E_FAULT_13075, "功率控制器间通讯超时"},
|
||
// {E_FAULT_13076, "功率控制器接收遥控、 遥信报文超时故障"},
|
||
// {E_FAULT_13077, "功率控制器与环境信息采集模块通讯超时"},
|
||
// {E_FAULT_13078, "车辆识别数据帧接收超时"},
|
||
// {E_FAULT_13079, "充电启动命令应答超时"},
|
||
// {E_FAULT_13080, "等待充电启动完成状态超时"},
|
||
// {E_FAULT_13081, "充电停止命令应答超时"},
|
||
// {E_FAULT_13082, "等待充电停止完成状态超时"},
|
||
// {E_FAULT_13083, "充电启动完成状态确认超时"},
|
||
// {E_FAULT_13084, "功率调节指令应答超时"},
|
||
// {E_FAULT_13085, "充电停止完成状态确认超时"},
|
||
// {E_FAULT_13086, "充电控制器间并枪时通信异常"},
|
||
// {E_FAULT_13087, "功率控制器地址冲突"},
|
||
// {E_FAULT_13088, "充电控制器地址冲突"},
|
||
{E_FAULT_13089, "人机通信异常"},
|
||
// {E_FAULT_13090, "设备自检超时故障"},
|
||
// {E_FAULT_13091, "内部通讯故障"},
|
||
// {E_FAULT_13092, "车位锁故障"},
|
||
// {E_FAULT_13093, "车位锁电池耗尽故障"},
|
||
// {E_FAULT_13094, "车位锁落锁失败故障"},
|
||
// {E_FAULT_13095, "终止订单号异常"},
|
||
{E_FAULT_13096, "开出盒通讯故障(DCU)"},
|
||
// {E_FAULT_13097, "开入盒通讯故障"},
|
||
// {E_FAULT_13098, "绝缘采样盒通讯故障"},
|
||
{E_FAULT_13099, "AB板通讯故障"},
|
||
// {E_FAULT_13100, "导引板通讯故障"},
|
||
// {E_FAULT_13101, "灯板通讯告警"},
|
||
// {E_FAULT_13102, "充电控制器未知停止原因"},
|
||
{E_FAULT_13103, "辅助电源电压切换回路故障"},
|
||
{E_FAULT_13104, "输出电流超过车辆最高允许电流"},
|
||
// {E_FAULT_13105, "系统时钟异常"},
|
||
// {E_FAULT_13106, "计费模型请求超时故障"},
|
||
// {E_FAULT_13107, "计费模型不合法故障"},
|
||
// {E_FAULT_13108, "对时超时故障"},
|
||
// {E_FAULT_13109, "对时时间不合法故障"},
|
||
|
||
//直流充电电源异常代码
|
||
{E_FAULT_14000, "开关模块故障"},
|
||
{E_FAULT_14001, "开关模块告警"},
|
||
{E_FAULT_14002, "开关模块通信故障"},
|
||
{E_FAULT_14003, "开关模块拒动/误动故障"},
|
||
{E_FAULT_14004, "开关模块粘连故障"},
|
||
// {E_FAULT_14005, "预留(开关模块拒动/误动告警)"},
|
||
// {E_FAULT_14006, "预留(开关模块粘连告警)"},
|
||
{E_FAULT_14007, "充电模块故障"},
|
||
// {E_FAULT_14008, "充电模块过温故障"},
|
||
// {E_FAULT_14009, "充电模块过温告警"},
|
||
// {E_FAULT_14010, "充电模块输出短路故障"},
|
||
// {E_FAULT_14011, "充电模块输出过流告警"},
|
||
// {E_FAULT_14012, "充电模块输出过压告警"},
|
||
// {E_FAULT_14013, "充电模块输出欠压告警"},
|
||
// {E_FAULT_14014, "充电模块交流输入告警"},
|
||
// {E_FAULT_14015, "充电模块输入过压告警"},
|
||
// {E_FAULT_14016, "充电模块输入欠压告警"},
|
||
// {E_FAULT_14017, "充电模块输入缺相告警"},
|
||
// {E_FAULT_14018, "充电模块输入不平衡告警"},
|
||
{E_FAULT_14019, "充电模块通信故障"},
|
||
{E_FAULT_14020, "充电模块启动失败"},
|
||
{E_FAULT_14021, "充电模块关机失败"},
|
||
// {E_FAULT_14022, "充电模块风扇故障"},
|
||
// {E_FAULT_14023, "充电模块泄放故障"},
|
||
// {E_FAULT_14024, "充电模块地址异常"},
|
||
// {E_FAULT_14025, "PFC 电路过温故障"},
|
||
// {E_FAULT_14026, "主变压器过温故障"},
|
||
// {E_FAULT_14027, "DC/DC 电路过温故障"},
|
||
// {E_FAULT_14028, "输出隔离二极管故障"},
|
||
// {E_FAULT_14029, "模块启动故障(非保护动作造成的模块启动失败)"},
|
||
// {E_FAULT_14030, "PFC 电路总故障"},
|
||
// {E_FAULT_14031, "PFC 电路过压故障"},
|
||
// {E_FAULT_14032, "PFC 电路偏压故障"},
|
||
// {E_FAULT_14033, "DC/DC 电路总故障"},
|
||
// {E_FAULT_14034, "高低压切换电路故障"},
|
||
// {E_FAULT_14035, "输出电路不平衡故障"},
|
||
// {E_FAULT_14036, "充电模块不输出告警"},
|
||
//{E_FAULT_14037, "启动充电前直流输出接触器外侧电压大于充电机最大输出电压"}, 文字太长
|
||
//{E_FAULT_14038, "启动充电前直流输出接触器外侧电压小于充电机最小输出电压"}, 文字太长
|
||
|
||
//直流充电车辆异常代码
|
||
{E_FAULT_15000, "BMS 通讯故障"},
|
||
{E_FAULT_15001, "直流充电控制模块判断BMS故障"},
|
||
// {E_FAULT_15002, "BMS 发送故障信息"},
|
||
{E_FAULT_15003, "BCP 充电参数配置报文超时"},
|
||
{E_FAULT_15004, "BRO 充电准备就绪报文超时"},
|
||
{E_FAULT_15005, "BCS 电池充电状态报文超时"},
|
||
{E_FAULT_15006, "BCL 电池充电需求报文超时"},
|
||
{E_FAULT_15007, "BST 中止充电报文超时"},
|
||
{E_FAULT_15008, "BSM 动力蓄电池状态报文超时"},
|
||
{E_FAULT_15009, "BRO 报文(0x00) 接收超时"},
|
||
{E_FAULT_15010, "BRO 报文(0xAA) 接收超时"},
|
||
{E_FAULT_15011, "BRM 车辆辨识报文超时"},
|
||
// {E_FAULT_15012, "BSM 报文中单体动力蓄电池电压过高"},
|
||
// {E_FAULT_15013, "BSM 报文中单体动力蓄电池电压过低"},
|
||
// {E_FAULT_15014, "BSM 报文中 SOC 过高"},
|
||
// {E_FAULT_15015, "BSM 报文中 SOC 过低"},
|
||
// {E_FAULT_15016, "BSM 报文中充电过流"},
|
||
// {E_FAULT_15017, "BSM 报文中动力蓄电池温度过高"},
|
||
// {E_FAULT_15018, "BSM 报文中动力蓄电池绝缘状态异常"},
|
||
// {E_FAULT_15019, "BSM 报文中连接器连接状态异"},
|
||
// {E_FAULT_15020, "BRO 准备就绪后取消"},
|
||
// {E_FAULT_15021, "BST 停止未知故障"},
|
||
// {E_FAULT_15022, "BST 绝缘故障"},
|
||
// {E_FAULT_15023, "BST 连接器过温"},
|
||
// {E_FAULT_15024, "BST 元件、 输出连接器过温"},
|
||
// {E_FAULT_15025, "BST 连接器故障"},
|
||
// {E_FAULT_15026, "BST 电池组过温"},
|
||
// {E_FAULT_15027, "BST 其他故障"},
|
||
// {E_FAULT_15028, "BST 检测点 2 电压检测故障"},
|
||
// {E_FAULT_15029, "BST 高压继电器故障"},
|
||
// {E_FAULT_15030, "BST 电流过大"},
|
||
// {E_FAULT_15031, "BST 电压异常"},
|
||
// {E_FAULT_15032, "BRM 报文数据项异常"},
|
||
// {E_FAULT_15033, "BCP 报文数据项异常"},
|
||
{E_FAULT_15034, "绝缘监测前直流输出接触器外侧电压越限(60V)"},
|
||
{E_FAULT_15035, "启动充电前直流输出接触器外侧电压与通信报文电池电压相差>±5%"},
|
||
{E_FAULT_15036, "电池最高允许充电电压小于充电机最小输出电压"},
|
||
{E_FAULT_15037, "输出电压大于车辆最高允许充电电压"},
|
||
{E_FAULT_15038, "需求电流超过车辆最高允许充电电流"},
|
||
{E_FAULT_15039, "需求电压超过车辆最高允许充电电压"},
|
||
{E_FAULT_15040, "BCS 中最高单体电池电压超过BCP 中最高允许单体电池电压"},
|
||
// {E_FAULT_15041, "BSM 中最高动力蓄电池温度超过BCP 中单体动力蓄电池最高允许温度"},
|
||
{E_FAULT_15042, "SOC 达到上限值"},
|
||
// {E_FAULT_15043, "BMS 通信协议版本不匹配"},
|
||
{E_FAULT_15044, "输出电流大于最高允许充电电流"},
|
||
{E_FAULT_15045, "电池端电压大于电池最高允许充电电压"},
|
||
// {E_FAULT_15046, "SOC 达到 100 持续请求大电流(可选)"},
|
||
};
|
||
#endif
|
||
|
||
const char ui_flow_real_mag[][30] =
|
||
{
|
||
"空闲 ",
|
||
"充电启动 ",
|
||
"绝缘启动 ",
|
||
"绝缘计算完成 ",
|
||
"绝缘检测模块停止 ",
|
||
"开始预充 ",
|
||
"预充完成 ",
|
||
"充电中 ",
|
||
"BMS通讯超时 ",
|
||
"充电停止 ",
|
||
"充电停止完成 ",
|
||
};
|
||
const char ui_flow_real_mag_e[][60] =
|
||
{
|
||
"Idle ",
|
||
"Charging Start ",
|
||
"Insulation Start ",
|
||
"Insulation Calc Done ",
|
||
"Insulation Det Stop ",
|
||
"Start Pre-charge ",
|
||
"Pre-charge Complete ",
|
||
"Charging ",
|
||
"BMS Comm Timeout ",
|
||
"Charging Stop ",
|
||
"Charging Stop Done ",
|
||
};
|
||
|
||
// const char ui_flow_real_mag_e[][60] =
|
||
// {
|
||
// "Ожидание ",
|
||
// "Начало зарядки ",
|
||
// "Начало изоляции ",
|
||
// "Расчет изоляции завершен ",
|
||
// "Изоляция. Остановите это ",
|
||
// "Начало предзаряда ",
|
||
// "Предзаряд завершен ",
|
||
// "Зарядка ",
|
||
// "Таймаут связи BMS ",
|
||
// "Остановка зарядки ",
|
||
// "Остановка зарядки завершена "
|
||
// };
|
||
|
||
const char c_reat_str[][10] =
|
||
{
|
||
"无",
|
||
"尖时段",
|
||
"峰时段",
|
||
"平时段",
|
||
"谷时段",
|
||
"深谷时段",
|
||
"预留1",
|
||
"预留2",
|
||
"预留3",
|
||
};
|
||
|
||
const char c_batt_type[][20] =
|
||
{
|
||
"无"
|
||
"铅酸电池",
|
||
"镍氢电池",
|
||
"磷酸铁锂电池",
|
||
"锰酸锂电池",
|
||
"钴酸锂电池",
|
||
};
|
||
const char c_charge_status[][50] =
|
||
{
|
||
"Available", //空闲
|
||
"Preparing", //准备中
|
||
"Charging", //充电中
|
||
"SuspendedEVSE", //充电暂停(充电桩原因)
|
||
"SuspendedEV", //充电暂停(车辆原因)
|
||
"Finishing", //结束充电
|
||
"Reserved", //预留
|
||
"Unavailable", //不可用
|
||
"Faulted" //故障
|
||
};
|
||
|
||
// const char c_charge_status[][50] =
|
||
// {
|
||
// "Доступно", //空闲
|
||
// "Подготовка", //准备中
|
||
// "Зарядка", //充电中
|
||
// "Приостановлено EVSE", //充电暂停(充电桩原因)
|
||
// "Приостановлено EV", //充电暂停(车辆原因)
|
||
// "Завершение", //结束充电
|
||
// "Зарезервировано", //预留
|
||
// "Недоступно", //不可用
|
||
// "Сбой", //故障
|
||
// };
|
||
|
||
/****************************************************
|
||
*函数名称: v_get_fault_info()
|
||
*功能说明: 获取故障告警数据的 中文解析数据
|
||
*参数说明:
|
||
* 输入参数: E_FAULT_INFO e_info 告警数据 mag 返回值
|
||
* 输出参数:
|
||
****************************************************/
|
||
void v_ui_get_fault_info(uint16_t e_info, char *mag)
|
||
{
|
||
uint8_t len;
|
||
|
||
// for(i=0;i<info_size;i++)
|
||
// {
|
||
// if(e_info == ui_fault_info[i].e_mag)
|
||
// {
|
||
// len = strlen(ui_fault_info[i].info);
|
||
// memcpy(mag,ui_fault_info[i].info,len);
|
||
// mag[len] = '\0';
|
||
// flag = 1;
|
||
// break;
|
||
// }
|
||
// }
|
||
|
||
len = (uint8_t)sprintf(mag, "%u", (unsigned)e_info);
|
||
mag[len] = '\0';
|
||
}
|
||
|
||
|