9ceb218f80
Co-authored-by: Cursor <cursoragent@cursor.com>
116 lines
5.0 KiB
C
116 lines
5.0 KiB
C
|
|
#ifndef UI_INTERFACE_H
|
|
#define UI_INTERFACE_H
|
|
|
|
#ifdef __cplusplus /*C++编译环境下兼容C语言*/
|
|
extern "C" {
|
|
#endif
|
|
|
|
/*------ Exported includes(头文件) ----------------------*/
|
|
#include "main.h"
|
|
#include "usart.h"
|
|
#include "publicdata/type.h"
|
|
#include "ui/ui_comm_impl.h"
|
|
#include "meter_calculate\meter_calculate_impl.h"
|
|
/*------ Exported macro(宏定义) -------------------------*/
|
|
|
|
|
|
/*------ Exported struct(结构体定义) --------------------*/
|
|
typedef enum
|
|
{
|
|
E_UI_GET_DATA_UI_EN = 0, //UI使能 0不使能 1使能
|
|
E_UI_GET_DATA_SCREEN_SAVER_EN, //UI屏保界面显示使能 0不使能 1使能 2使能轮播
|
|
E_UI_GET_DATA_GUN_CNT, //枪数量
|
|
E_UI_GET_DATA_LALANGGUAGE_TYPE, //语言类型 0中文 1英文
|
|
E_UI_GET_DATA_GUN_LINK, //枪连接状态 0未连接 1已连接;
|
|
E_UI_GET_DATA_TIME_ZONE, //时区偏移量
|
|
|
|
E_UI_GET_DATA_BS_COMM_FLAG, //平台连接标志 0未连接 1已连接
|
|
E_UI_GET_DATA_BS_UPDATE_FLAG, //获取远程升级标志
|
|
E_UI_GET_DATA_FLOW_STAET, //充电流程控制状态 0空闲 1充电启动 2绝缘启动 3绝缘计算完成 4绝缘检测模块停止 5开始预充 6预充完成 7充电中 8BMS通讯超时 9充电停止 10充电停止完成
|
|
E_UI_GET_DATA_CHAR_VOL, //充电电压 精度 0.1V
|
|
E_UI_GET_DATA_CHAR_CUR, //充电电流 精度 0.1A
|
|
E_UI_GET_DATA_CHAR_POWER_H2, //充电电量 高2字节 精度 0.0001 -- 65535
|
|
E_UI_GET_DATA_CHAR_POWER_L2, //充电电量 底2字节 精度 0.0001 -- 65535
|
|
E_UI_GET_DATA_CHAR_MONEY, //充电金额 0.01元
|
|
E_UI_GET_DATA_CHAR_TIME, //充电时间 min
|
|
E_UI_GET_DATA_CHAR_SOC, //充电soc %
|
|
E_UI_GET_DATA_BAAT_TYPE, //电池类型 01H,铅酸电池;02H:镍氢电池;03H:磷酸铁锂电池;04H:锰酸锂电池;05H:钴酸锂电池;
|
|
E_UI_GET_DATA_NEED_VOL, //需求电压 精度 0.1V
|
|
E_UI_GET_DATA_NEED_CUR, //需求电流 精度 0.1A
|
|
E_UI_GET_DATA_BATT_ONE_MAX_TEMP, //最高单体温度 度
|
|
E_UI_GET_DATA_BATT_ONE_MAX_VOL, //最高单体电压 0.1V
|
|
E_UI_GET_DATA_BATT_RATED_C10, //电池容量 0.1
|
|
E_UI_GET_DATA_RATED_VOL, //额定电压 0.1
|
|
E_UI_GET_DATA_MAX_OUT_CUR, //最大充电电流 0.1
|
|
|
|
E_UI_GET_DATA_STOP_INFO, //充电停止原因
|
|
E_UI_GET_DATA_FAULT_NUM, //故障数量
|
|
}E_UI_GET_DATA_TYPE;
|
|
|
|
typedef enum
|
|
{
|
|
E_UI_GET_STR_PILE_NO = 0, //桩编号 参数区分获取两平台桩编号信息
|
|
E_UI_GET_STR_QRcode, //二维码
|
|
E_UI_GET_STR_VERSION_INFO, //版本信息
|
|
E_UI_GET_STR_MAINTENANCE_PWD, //维护密码
|
|
E_UI_GET_STR_PILENO, //平台桩编号
|
|
E_UI_GET_STR_DOMAIN, //平台服务器域名
|
|
E_UI_GET_STR_QR, //二维码
|
|
E_UI_GET_STR_APN, //apn
|
|
E_UI_GET_STR_OCPP_AUTH_KEY, //OCPP鉴权密钥
|
|
}E_UI_GET_STR_TYPE;
|
|
|
|
typedef enum
|
|
{
|
|
E_START_VIN = 0,
|
|
E_START_CARD,
|
|
E_START_DEBUG,
|
|
}E_START_TYPE;
|
|
|
|
typedef enum
|
|
{
|
|
E_CHARGE_STATUS_AVAILABLE, //空闲
|
|
E_CHARGE_STATUS_PREPARING, //准备中
|
|
E_CHARGE_STATUS_CHARGING, //充电中
|
|
E_CHARGE_STATUS_SUSPENDED_EVSE, //充电暂停(充电桩原因)
|
|
E_CHARGE_STATUS_SUSPENDED_EV, //充电暂停(车辆原因)
|
|
E_CHARGE_STATUS_FINISHING, //结束充电
|
|
E_CHARGE_STATUS_RESERVED, //预留
|
|
E_CHARGE_STATUS_UNAVAILABLE, //不可用
|
|
E_CHARGE_STATUS_FAULTED //故障
|
|
}E_CHARGE_STATUS;
|
|
/*------ Exported variables(变量定义) -------------------*/
|
|
|
|
/*------ Exported function prototypes (函数声明) -------*/
|
|
U16_T u16_ui_get_sys_data(U8_T u8_gunNo, E_UI_GET_DATA_TYPE e_dataType , U16_T u16_dataPara);
|
|
U8_T u8_ui_get_sys_str(U8_T u8_gunNo, E_UI_GET_STR_TYPE e_dataType , U16_T u16_dataPara ,U8_T *u8_str , U16_T u16_len);
|
|
U16_T u16_ui_get_his_fault_count(void);
|
|
U8_T u8_ui_get_his_fault_line(U16_T newest_pos, U8_T *u8_str, U16_T u16_len);
|
|
U16_T u16_ui_get_his_charge_count(void);
|
|
U8_T u8_ui_get_his_charge_line(U16_T newest_pos, U8_T *u8_str, U16_T u16_len);
|
|
|
|
U8_T u8_ui_ctrl_charge(U8_T u8_gunNo,E_CMD e_cmd, E_START_TYPE e_type);
|
|
void v_ui_set_comm_timeout(U8_T u8_flag);
|
|
U8_T u8_ui_gun_work_state(U8_T u8_gunNo);
|
|
START_REASON e_ui_get_charge_way(U8_T u8_gunNo);
|
|
|
|
void v_set_LCD_rtc(void); //设定液晶rtc时间
|
|
E_CHARGE_STATUS e_ui_get_charge_status(U8_T u8_gunNo);
|
|
|
|
/** 非 UI 任务调用:请求界面回到待机/空闲(如 flowctrl FREE 态在线鉴权失败);UI 任务内轮询清标志并跳转 */
|
|
void v_ui_request_idle_screen_recover(void);
|
|
|
|
U32_T u32_ui_get_charge_power(U8_T u8_gunNo); //获取充电电量,单位0.0001kWh
|
|
|
|
void v_ui_param_init_by_type(E_UI_PARAM_TYPE_T e_type);
|
|
void v_ui_param_save_by_type(E_UI_PARAM_TYPE_T e_type);
|
|
void v_ui_para_str_update(U16_T u16_addr, U8_T *u8_str, U8_T u8_str_len);
|
|
void v_ui_param_init(void);
|
|
void v_ui_system_reboot(void);
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* UI_INTERFACE_H */
|