Browse Source

1. 开启NTC功能。

2. 修复华为mateboo_x兼容性问题
3. 解决gt5 gt7手机反灌问题
4. C1+C2+A时增加scp降额功能,不关闭SCP协议
5. 切换mos时延迟时间改为8ms,4ms的话苹果手机会断一下
6. 新增切状态时关闭保护模式两秒功能
7. 一些PD包直接回不支持
master
Jipeng.tang 7 days ago
parent
commit
394039b0a4
  1. 20
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/config.h
  2. 18
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/customized.h
  3. 1
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/port1_customized.h
  4. 29
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/comp_dac.c
  5. 16
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/comp_protection.c
  6. 264
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/customized.c
  7. 20
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/port0_customized.c
  8. 36
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/port1_customized.c
  9. BIN
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.axf
  10. 38
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.build_log.htm
  11. 1411
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.htm
  12. 146
      PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/cps8860_Target 1.dep
  13. 51
      PD_CPS8860_A1_CPS_Common_Demo/common/app/src/app_spec.c
  14. 9
      PD_CPS8860_A1_CPS_Common_Demo/common/app/src/cps8860_it.c
  15. 2
      PD_CPS8860_A1_CPS_Common_Demo/common/app/src/main.c
  16. 2
      PD_CPS8860_A1_CPS_Common_Demo/common/comp/comp/inc/comp_powerout.h
  17. 11
      PD_CPS8860_A1_CPS_Common_Demo/common/comp/comp/src/comp_discharge.c
  18. 65
      PD_CPS8860_A1_CPS_Common_Demo/common/comp/comp/src/comp_powerout.c
  19. 48
      PD_CPS8860_A1_CPS_Common_Demo/common/comp/protocol/pd_protocol/src/pd_protocol.c

20
PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/config.h

@ -30,8 +30,18 @@
#define TYPEC_PORT_MAX 2
#define USER_DERAT_ENABLE 1
#define USER_NTC_ENABLE 0
#define SWITCH_LINE_OFF_PROTECTION 0
#define USER_NTC_ENABLE 1
// 为了解决GT5手机, 重新广播src_cap时,这时候会反灌一下电压。
// 比如广播src_cap,手机请求了5V,然而自身反灌电压,导致一直调压失败
#define SWITCH_LINE_OFF_PROTECTION 1
// 解决华为matebook_x设备兼容性问题: 该设备识别到pdo有pps档会不停的复位。
// 收到sofo_reset的时候开始倒计时3秒, 三秒内连续收到三次,则识别该设备为 matebook_x
// 拔出的时候, 把该标志清除。
#define HUAWEI_MATEBOOK_X 1
#define PD_PACKAGE_CONFLICT_SOLVE 0
extern uint16_t system_1ms_cnt;
extern uint16_t system_1s_cnt;
@ -57,7 +67,7 @@ extern uint16_t system_1s_cnt;
#endif
/******************log debug***************************/
#define UART_DEUG 0
#define UART_DEUG 0
#if UART_DEUG
#define log_info comp_uart2_sync_print
#else
@ -73,12 +83,12 @@ extern uint16_t system_1s_cnt;
/****************project inforamtion MTP ADDR:0x100000C0*******************/
#define SOFT_WARE_VERISION_H 0x00
#define SOFT_WARE_VERISION_L 0x06
#define SOFT_WARE_VERISION_L 0x08
#define CUSTOM_ID 0xA1
#define PROJECT_ID 0x60
/**********************���칦�ܺ궨��************************************/
/*The voltage is adjusted to a percentage of ps rdy*/
#define PERCENT_OF_VOL_REGULA 10//5 /*5--±5%*/
#define PERCENT_OF_VOL_REGULA 5 /*5--±5%*/
/*Do not look at the voltage adjustment completed current difference */
#define PS_RDY_CHECK_CURRENT 250
/*Cable impedance SNS R*/

18
PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/customized.h

@ -113,10 +113,22 @@ typedef struct
bool c1_priority_inser; // C1口优先C2口接进来 = 1 代表是
bool need_switch_mos;
bool new_request_receive_done; // 新request接收完成
bool wait_c2_switch_done; // 新request接收完成
volatile uint16_t protection_off_2s;
volatile uint16_t protection_off_2s[2];
bool protection_off_flag[2];
bool protect_en; //保护是否使能
#if HUAWEI_MATEBOOK_X
uint16_t matebook_cnt_3s[2];
uint16_t received_sofo_reset_cnt[2];
bool equipment_is_matebook_x[2]; // 插入的设备是华为matebook x
#endif
// typec状态机
bool type_c1_connect;
bool type_c2_connect;
} user_app_s;
extern user_app_s user_app;
@ -341,6 +353,8 @@ void usba_detection(void);
void insertion_equipment_judgment(void);
void port_inser_priority_judgment(void);
void gate3_control(bool enable);
void solve_huawei_matebook(uint8_t port, pd_param_s* pd_param);
void user_timer_event(uint8_t port);
#if USER_NTC_ENABLE
// void ntc_judgment(void);

1
PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/inc/port1_customized.h

@ -28,6 +28,7 @@ extern const uint8_t port1_scp_register_value[256];
extern const scp_def_vol_s PORT1_SCP_DEF_VOL[];
//scp power curve for 0xd0~0xdf.
void port1_scp_derate(bool en);
/*
* @brief port1_scp_register_attr_upgrade

29
PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/comp_dac.c

@ -22,6 +22,8 @@ uint16_t req_cc[TYPEC_PORT_MAX] = {0, 0};
*/
void comp_dac_close_vbus(uint8_t port)
{
log_info("close_vbus:%d\n", port);
switch(port)
{
case TYPEC_PORT0:
@ -273,6 +275,8 @@ void port0_opto_cv(uint8_t port, uint16_t val)
{
uint32_t temp[TYPEC_PORT_MAX + 1] = {0};
// log_info("set_val:%d\n", val);
temp[port] = CV0_LOOP_TRIM_COEFF(val);
if(temp[port] >= DAC_CV01_BIT)
@ -306,11 +310,6 @@ static void comp_dac_cv_acdc(uint8_t port, uint16_t val)
{
uint32_t temp[TYPEC_PORT_MAX + 1] = {0};
bool type_c1_state = 0, type_c2_state = 0;
type_c1_state = (g_app_protocol_param[0].pd_param.typec_status.typec_status == AttachedSRC);
type_c2_state = (g_app_protocol_param[1].pd_param.typec_status.typec_status == AttachedSRC);
switch(port)
{
case TYPEC_PORT0:
@ -323,8 +322,9 @@ static void comp_dac_cv_acdc(uint8_t port, uint16_t val)
else // port1
{
// 单C2时, 是使用C1的ACDC来调压,不需要用到C2的
if(!type_c1_state && type_c2_state)
if(!user_app.type_c1_connect && user_app.type_c2_connect)
{
g_powerout_info[TYPEC_PORT0].set_vol = val;
port0_opto_cv(TYPEC_PORT0, val);
}
@ -450,16 +450,12 @@ static void comp_dac_cc_2dcdc_fb(uint8_t port, uint16_t val, uint16_t offset)
#endif
}
uint16_t test_current;
static void comp_dac_cc_acdc(uint8_t port, uint16_t val, uint16_t offset)
{
uint32_t value[TYPEC_PORT_MAX] = {0};
int16_t temp[TYPEC_PORT_MAX] = {0};
// log_info("opto_set_cc port:%d cc_val:%d\n", port, val);
// 仅测试, C2口用第一路acdc, 走gate3时设置3.7A实际只能出3.3A
test_current = val;
//log_info("opto_set_cc port:%d cc_val:%d\n", port, val);
if(port == TYPEC_PORT0)
{
@ -510,12 +506,6 @@ static void comp_dac_cc_acdc(uint8_t port, uint16_t val, uint16_t offset)
*/
void comp_dac_cc_target_set(uint8_t port, uint16_t val, uint16_t offset)
{
bool type_c1_state = 0, type_c2_state = 0;
type_c1_state = (g_app_protocol_param[0].pd_param.typec_status.typec_status == AttachedSRC);
type_c2_state = (g_app_protocol_param[1].pd_param.typec_status.typec_status == AttachedSRC);
if(port >= TYPEC_PORT_MAX)
{
return;
@ -530,12 +520,13 @@ void comp_dac_cc_target_set(uint8_t port, uint16_t val, uint16_t offset)
// 单C2时, cc是opto调流。
// C1 + C2时, C1是opto调流, C2是FB调流
if(type_c1_state && !type_c2_state) // 单C1
if(user_app.type_c1_connect && !user_app.type_c2_connect) // 单C1
{
comp_dac_cc_acdc(TYPEC_PORT0, val, offset);
}
else if(!type_c1_state && type_c2_state) // 单C2
else if(!user_app.type_c1_connect && user_app.type_c2_connect) // 单C2
{
g_powerout_info[TYPEC_PORT0].set_current = val;
comp_dac_cc_acdc(TYPEC_PORT0, val, offset);
comp_dac_cc_2dcdc_fb(TYPEC_PORT1, val, offset); // 另外一路的电流也设到一样的
}

16
PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/comp_protection.c

@ -271,8 +271,8 @@ void comp_protection_monitor(uint8_t port, protection_param_s *protection_param)
// log_info("port:%d,%d,%d\n", port, pro_vpt[port][PROT_UVP], adc_sample[port][PROT_UVP]);
// C1 + C2情况下, C2走5V时的OCP需要软件来做
if(g_app_protocol_param[TYPEC_PORT0].pd_param.typec_status.typec_status == AttachedSRC
&& g_app_protocol_param[TYPEC_PORT1].pd_param.typec_status.typec_status == AttachedSRC
if(user_app.type_c1_connect
&& user_app.type_c2_connect
&& g_powerout_info[TYPEC_PORT1].set_vol <= VOLTAGE_5P5V)
{
adc_sample[TYPEC_PORT1][PROT_OCP] = comp_adc_get_cur12(TYPEC_PORT1);
@ -618,18 +618,6 @@ void comp_protection_run(uint8_t port)
case PRO_MONITOR:
if(!timer_cnt[port])
{
// 哪个口有接入,哪个口才开启保护
// if( g_app_protocol_param[port].pd_param.typec_status.typec_status != AttachedSRC )
// {
// g_protection_param.protection_param[0].protection_enable = PORT_OTP_ENABLE;
// g_protection_param.protection_param[1].protection_enable = PORT_OTP_ENABLE;
// }
// else
// {
// g_protection_param.protection_param[0].protection_enable |= VIN_UVP_ENABLE | DPDN_WET_ENABLE | PORT_OTP_ENABLE;
// g_protection_param.protection_param[1].protection_enable |= VIN_UVP_ENABLE | DPDN_WET_ENABLE | VIN_OVP_ENABLE | VIN_OCP_ENABLE | PORT_OTP_ENABLE;
// }
if(g_app_protocol_param[port].pd_param.typec_status.typec_status != AttachedSRC)
{
return;

264
PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/customized.c

@ -434,6 +434,29 @@ void pd_src_cap_init(uint8_t port, pd_param_s*pd_param, uint8_t pwr_cnt)
// }
#endif
void user_timer_event(uint8_t port)
{
#if HUAWEI_MATEBOOK_X
if(user_app.matebook_cnt_3s[port])
{
user_app.matebook_cnt_3s[port]--;
}
// 识别完成后,需要主动断开一次,但是断开的话会把标志位给清了。 所以在倒计时3秒内断的话不清标志
// if((g_app_protocol_param[port].pd_param.typec_status.typec_status == UnattachedSRC)
// && (user_app.matebook_cnt_3s[port] == 0))
if(g_app_protocol_param[port].pd_param.typec_status.typec_status == UnattachedSRC)
{
// 拔出设备, 清零标志位
user_app.received_sofo_reset_cnt[port] = 0;
user_app.matebook_cnt_3s[port] = DELAY_3S;
user_app.equipment_is_matebook_x[port] = false;
}
#endif
}
void gate3_control(bool enable)
{
log_info("gate3:%d\n", enable);
@ -548,16 +571,16 @@ void insertion_equipment_judgment(void)
// 只有双口都连接才需要判断接入的设备是什么
if(g_app_protocol_param[TYPEC_PORT0].pd_param.typec_status.typec_status == AttachedSRC
&& g_app_protocol_param[TYPEC_PORT1].pd_param.typec_status.typec_status == AttachedSRC
if(user_app.type_c1_connect
&& user_app.type_c2_connect
&& start_countdown_time)
{
start_countdown_time = false;
user_app.c1_equipment_judgment_cnt = DELAY_1M;
user_app.c2_equipment_judgment_cnt = DELAY_1M;
}
else if(g_app_protocol_param[TYPEC_PORT0].pd_param.typec_status.typec_status != AttachedSRC
|| g_app_protocol_param[TYPEC_PORT1].pd_param.typec_status.typec_status != AttachedSRC)
else if(!user_app.type_c1_connect
|| !user_app.type_c2_connect)
{
start_countdown_time = true;
user_app.c1_equipment_type = EQUIMENT_IS_PHONE;
@ -660,12 +683,16 @@ void mos_switch_control(void)
case C2_A_INSER:
// 等第一路电压调整到 第二路一样的电压
if(abs(g_powerout_info[TYPEC_PORT1].set_vol - comp_adc_get_vin12(TYPEC_PORT0)) <= VOLTAGE_0P5V)
// 第二路需要设置的电压 - 第一路当前采集的电压 <= 500
// 第二路需要设置的电压 - 第二路当前采集的电压 <= 500
if((abs(g_powerout_info[TYPEC_PORT1].set_vol - comp_adc_get_vin12(TYPEC_PORT0)) <= VOLTAGE_0P5V)
&& (abs(g_powerout_info[TYPEC_PORT1].set_vol - comp_adc_get_vin12(TYPEC_PORT1)) <= VOLTAGE_0P5V)
)
{
user_app.need_switch_mos = false;
log_info("%s %d\n", __func__, __LINE__);
gate3_control(true);
drv_delay_ms(4);
drv_delay_ms(8);
REG_ANALOG_GATE2->bf.driver_en = 0;
REG_ANALOG_GATE2->bf.cp_en = 0;
}
@ -682,7 +709,7 @@ void mos_switch_control(void)
REG_ANALOG_GATE2->bf.driver_en = 1;
REG_ANALOG_GATE2->bf.cp_en = 1;
drv_delay_ms(4);
drv_delay_ms(8);
gate3_control(false);
}
@ -691,6 +718,21 @@ void mos_switch_control(void)
}
void wait_c2_ready(void)
{
// 等gate3切换完之后, 再去开gate1
if(user_app.wait_c2_switch_done
&& (REG_ANALOG_GATE3->bf.driver_en == false))
{
user_app.wait_c2_switch_done = false;
if(user_app.type_c1_connect)
{
pd_phy_open_vbus(TYPEC_PORT0);
}
}
}
/*
* @brief adapter_state_check
* @param NULL
@ -705,8 +747,8 @@ void adapter_state_check(void)
// 3个口的状态
type_c1_state = (g_app_protocol_param[0].pd_param.typec_status.typec_status == AttachedSRC);
type_c2_state = (g_app_protocol_param[1].pd_param.typec_status.typec_status == AttachedSRC);
type_c1_state = user_app.type_c1_connect;
type_c2_state = user_app.type_c2_connect;
usba_state = usba_online_state;
if(type_c1_state && !type_c2_state && !usba_state)
@ -737,19 +779,42 @@ void adapter_state_check(void)
{
user_app.adapter_state = C1_C2_A_INSER;
}
else
{
user_app.adapter_state = NO_INSERT;
}
mos_switch_control();
wait_c2_ready();
#if SWITCH_LINE_OFF_PROTECTION
if((user_app.protection_off_2s == 0)
&& (g_powerout_info[TYPEC_PORT0].power_state == PWR_RDY)
&& (g_powerout_info[TYPEC_PORT1].power_state == PWR_RDY)
&& user_app.protection_off_flag)
// 如果是 C1 + C2状态, 还需要判断另外一个口不在调压状态,这样才能开启总的保护
// 不然另外一个口调压途中开启了保护,会直接触发
if(((g_powerout_info[TYPEC_PORT0].power_state == PWR_RDY)
|| (g_powerout_info[TYPEC_PORT0].power_state == PWR_STANDBY))
&& ((g_powerout_info[TYPEC_PORT1].power_state == PWR_RDY)
|| (g_powerout_info[TYPEC_PORT1].power_state == PWR_STANDBY))
&& (user_app.protection_off_2s[TYPEC_PORT0] == 0)
&& user_app.protection_off_flag[TYPEC_PORT0]
)
{
user_app.protection_off_flag = false;
user_app.protection_off_flag[TYPEC_PORT0] = false;
comp_powerout_protect_en(TYPEC_PORT0, true);
// log_info("port0_open_prote\n");
}
if(((g_powerout_info[TYPEC_PORT1].power_state == PWR_RDY)
|| (g_powerout_info[TYPEC_PORT1].power_state == PWR_STANDBY))
&& ((g_powerout_info[TYPEC_PORT0].power_state == PWR_RDY)
|| (g_powerout_info[TYPEC_PORT0].power_state == PWR_STANDBY))
&& (user_app.protection_off_2s[TYPEC_PORT1] == 0)
&& user_app.protection_off_flag[TYPEC_PORT1]
)
{
user_app.protection_off_flag[TYPEC_PORT1] = false;
comp_powerout_protect_en(TYPEC_PORT1, true);
// log_info("port1_open_prote\n");
}
#endif
@ -769,11 +834,14 @@ void adapter_state_check(void)
}
#if SWITCH_LINE_OFF_PROTECTION
// log_info("close_prote\n");
// 每次切换gate2和gate3的时候, 关闭2秒保护, 2秒后且在ready状态再打开
comp_powerout_protect_en(TYPEC_PORT0, false);
comp_powerout_protect_en(TYPEC_PORT1, false);
user_app.protection_off_2s = DELAY_2S;
user_app.protection_off_flag = true;
user_app.protection_off_2s[TYPEC_PORT0] = DELAY_2S;
user_app.protection_off_2s[TYPEC_PORT1] = DELAY_2S;
user_app.protection_off_flag[TYPEC_PORT0] = true;
user_app.protection_off_flag[TYPEC_PORT1] = true;
#endif
if(user_app.update_adapter_state)
@ -784,7 +852,6 @@ void adapter_state_check(void)
switch(user_app.adapter_state)
{
case NO_INSERT:
case A_INSER:
// 恢复最大功率, 恢复全部协议
g_powerout_info[TYPEC_PORT0].support_protocol.byte = PROTOCOL_ALL_ENABLE;
g_powerout_info[TYPEC_PORT1].support_protocol.byte = PROTOCOL_ALL_ENABLE;
@ -794,7 +861,29 @@ void adapter_state_check(void)
app_protocol_reset(TYPEC_PORT1);
gate3_control(false);
user_app.need_switch_mos = false;
user_app.new_request_receive_done = false;
user_app.wait_c2_switch_done = false;
break;
case A_INSER:
// 从 有C口插入到没C口插入状态才清零一遍,不然休眠模式插着A口起机,执行了
// app_protocol_reset 会让typeC状态机一直卡在等待连接
if((user_app.last_adapter_state == C1_A_INSER)
|| (user_app.last_adapter_state == C2_A_INSER)
|| (user_app.last_adapter_state == C1_C2_A_INSER))
{
// 恢复最大功率, 恢复全部协议
g_powerout_info[TYPEC_PORT0].support_protocol.byte = PROTOCOL_ALL_ENABLE;
g_powerout_info[TYPEC_PORT1].support_protocol.byte = PROTOCOL_ALL_ENABLE;
// 拔出时, 复位协议, 关闭gate3
app_protocol_reset(TYPEC_PORT0);
app_protocol_reset(TYPEC_PORT1);
gate3_control(false);
user_app.need_switch_mos = false;
user_app.wait_c2_switch_done = false;
}
break;
case C1_INSER:
@ -815,6 +904,9 @@ void adapter_state_check(void)
g_powerout_info[TYPEC_PORT0].support_protocol.byte = PROTOCOL_ALL_ENABLE;
g_powerout_info[TYPEC_PORT1].support_protocol.byte = PROTOCOL_ALL_ENABLE;
// 恢复C2口的SCP降额
port1_scp_derate(false);
// 让第一路的电压电流和第二路的一样之后, 才把gate3打开, gate2关闭
comp_set_vol_cur(TYPEC_PORT0,
g_powerout_info[TYPEC_PORT1].set_vol,
@ -833,6 +925,9 @@ void adapter_state_check(void)
g_powerout_info[TYPEC_PORT0].support_protocol.byte = PROTOCOL_ALL_ENABLE;
g_powerout_info[TYPEC_PORT1].support_protocol.byte = PROTOCOL_ALL_ENABLE;
// 恢复C2口的SCP降额
port1_scp_derate(false);
// 1. 接入优先级
if(user_app.c1_priority_inser)
{
@ -927,14 +1022,14 @@ void adapter_state_check(void)
if(g_powerout_info[TYPEC_PORT1].protocol_type == PROTOCOL_PD)
{
// 发送新src_cap 等C2的负载主动申请完之后,再去切mos
user_app.new_request_receive_done = true;
user_app.wait_c2_switch_done = true;
user_app.need_switch_mos = true;
}
else // 其他协议都是小功率, 直接切mos
{
REG_ANALOG_GATE2->bf.driver_en = 1;
REG_ANALOG_GATE2->bf.cp_en = 1;
drv_delay_ms(4);
drv_delay_ms(8);
gate3_control(false);
}
}
@ -943,7 +1038,7 @@ void adapter_state_check(void)
// 1. 确保gate3是关闭的
REG_ANALOG_GATE2->bf.driver_en = 1;
REG_ANALOG_GATE2->bf.cp_en = 1;
drv_delay_ms(4);
drv_delay_ms(8);
gate3_control(false);
}
@ -972,6 +1067,9 @@ void adapter_state_check(void)
need_send_cap_flag[TYPEC_PORT1] = PD_PWR_65W;
}
// 恢复C2口的SCP降额
port1_scp_derate(false);
// 让第一路的电压电流和第二路的一样之后, 才把gate3打开, gate2关闭
comp_set_vol_cur(TYPEC_PORT0,
g_powerout_info[TYPEC_PORT1].set_vol,
@ -986,14 +1084,18 @@ void adapter_state_check(void)
need_send_cap_flag[TYPEC_PORT0] = PD_PWR_45W;
need_send_cap_flag[TYPEC_PORT1] = PD_PWR_12W;
// 复位DPDN协议以及只留PD协议
charge_protocol_reset(TYPEC_PORT1, &g_app_protocol_param[TYPEC_PORT1].dpdn_param,
SCP_TYPEC_RESET);
g_powerout_info[TYPEC_PORT1].support_protocol.byte = PROTOCOL_ONLY_ENABLE_PD;
// 只关QC。 PD通过发src_cap降额, SCP通过降额寄存器进行降额
g_powerout_info[TYPEC_PORT1].support_protocol.qc_support = 0;
// 如果C2原本就升到了5V以上电压, 要降回5V。 PD会自己回5V, DPDN协议就需要手动设回去
if(g_powerout_info[TYPEC_PORT1].protocol_type != PROTOCOL_PD)
// C1口进行SCP降额
port1_scp_derate(true);
// 如果是 PD,则不主动回5V。 如果是SCP,也不主动回5V, 如果是QC,才主动回5V
if(g_powerout_info[TYPEC_PORT1].protocol_type == PROTOCOL_QC)
{
// 复位DPDN协议, 把C2口主动调回5V
charge_protocol_reset(TYPEC_PORT1, &g_app_protocol_param[TYPEC_PORT1].dpdn_param,
SCP_TYPEC_RESET);
comp_powerout_default_set(TYPEC_PORT1, &g_powerout_info[TYPEC_PORT1]);
}
@ -1021,7 +1123,7 @@ void adapter_state_check(void)
if(g_powerout_info[TYPEC_PORT1].protocol_type == PROTOCOL_PD)
{
// 发送新src_cap 等C2的负载主动申请完之后,再去切mos
user_app.new_request_receive_done = true;
user_app.wait_c2_switch_done = true;
user_app.need_switch_mos = true;
}
else // 其他协议都是小功率, 直接切mos
@ -1029,7 +1131,7 @@ void adapter_state_check(void)
// 先关再开, 防止功率并联反灌
REG_ANALOG_GATE2->bf.driver_en = 1;
REG_ANALOG_GATE2->bf.cp_en = 1;
drv_delay_ms(4);
drv_delay_ms(8);
gate3_control(false);
}
}
@ -1037,7 +1139,7 @@ void adapter_state_check(void)
{
REG_ANALOG_GATE2->bf.driver_en = 1;
REG_ANALOG_GATE2->bf.cp_en = 1;
drv_delay_ms(4);
drv_delay_ms(8);
gate3_control(false);
}
@ -1091,10 +1193,10 @@ void adapter_state_check(void)
}
}
// log_info("adapter_state:%d port0:%d port1:%d\n",
// user_app.adapter_state,
// need_send_cap_flag[TYPEC_PORT0],
// need_send_cap_flag[TYPEC_PORT1]);
log_info("adapter_state:%d port0:%d port1:%d\n",
user_app.adapter_state,
need_send_cap_flag[TYPEC_PORT0],
need_send_cap_flag[TYPEC_PORT1]);
user_app.last_adapter_state = user_app.adapter_state;
#if USER_NTC_ENABLE
@ -1605,6 +1707,68 @@ void comp_port_connect_state_check(uint8_t port)
}
#if HUAWEI_MATEBOOK_X
// 该函数一定要放在 prl 和 pe层中间
void solve_huawei_matebook(uint8_t port, pd_param_s* pd_param)
{
// prl层收到sofo_reset会把 pe_softreset_recived_from_prl = true
// pe层时会把 pe_softreset_recived_from_prl = false
if(pd_param->pd_flags.pd_pe_event_flag.bits.pe_softreset_recived_from_prl)
{
if(user_app.received_sofo_reset_cnt[port] == 0)
{
user_app.matebook_cnt_3s[port] = DELAY_3S;
}
user_app.received_sofo_reset_cnt[port]++;
}
// 如果三秒内连续收到3次, 则认为是该华为笔记本
if((user_app.matebook_cnt_3s[port] != 0)
&& user_app.received_sofo_reset_cnt[port] >= 3)
{
user_app.equipment_is_matebook_x[port] = true;
user_app.matebook_cnt_3s[port] = 0;
if(port == TYPEC_PORT0)
{
port0_pd_src_cap_init(pd_param, need_send_cap_flag[TYPEC_PORT0]);
}
else
{
port1_pd_src_cap_init(pd_param, need_send_cap_flag[TYPEC_PORT1]);
}
// 更新后还必须发一次软复位或者硬复位, 这笔记本才会去申请电压
// pd_param->pd_flags.pd_pe_event_flag.bits.pe_hardreset_recived_from_prl = true;
// pd_param->pd_pe_status.pe_status = PE_SRC_Hard_Reset;
// pd_param->pd_pe_status.pe_process_status = pd_entry_status;
// pd_param->pd_pe_status.pe_process_status = pd_entry_status;
// PE_SRC_Transition_to_default_action(port, pd_param);
pd_param->pd_flags.pd_process_flag.bits.ams_start_flag = true;
pd_param->pd_pe_status.pe_process_status = pd_entry_status;
pd_param->pd_pe_status.pe_status = PE_SRC_Send_Soft_Reset;
PE_SRC_Send_Soft_Reset_action(port, pd_param);
log_info("port:[%d] is_matebook\n", port);
}
// 倒计时结束, 收到的sofo_reset少于3次
if((user_app.matebook_cnt_3s[port] == 0)
&& (user_app.received_sofo_reset_cnt[port] < 3))
{
user_app.equipment_is_matebook_x[port] = false;
user_app.received_sofo_reset_cnt[port] = 0;
// log_info("*");
}
// 拔出设备时要清零标志位, 这个在拔出typec时做, 这个函数放在prl和pe中间的话
// 是只有typec已连接才会跑
}
#endif
void port_inser_priority_judgment(void)
{
// 只有 C1 + C2 同在时才需要判接入优先级, 所以单口时不需要清零
@ -1650,6 +1814,14 @@ void port_inser_priority_judgment(void)
}
}
void typec_state_update(void)
{
user_app.type_c1_connect = ((g_app_protocol_param[0].pd_param.typec_status.typec_status == AttachedSRC)
|| (g_app_protocol_param[0].pd_param.typec_status.typec_status == UnattachWaitSRC));
user_app.type_c2_connect = ((g_app_protocol_param[1].pd_param.typec_status.typec_status == AttachedSRC)
|| (g_app_protocol_param[1].pd_param.typec_status.typec_status == UnattachWaitSRC));
}
/*
* @brief app_protocol_run
* @param null
@ -1669,23 +1841,17 @@ void app_protocol_run(uint8_t port)
// }
typec_run(port, &g_app_protocol_param[port].pd_param);
/*
static uint8_t new_state = 0, old_state = 0xff;
new_state = g_app_protocol_param[TYPEC_PORT0].pd_param.typec_status.typec_status;
if(old_state != new_state)
{
old_state = new_state;
log_info("port0_typec:%d\n", old_state);
}
static uint8_t new_state = 0, old_state = 0xff;
new_state = g_app_protocol_param[TYPEC_PORT0].pd_param.typec_status.typec_status;
if(system_1s_cnt)
{
system_1s_cnt = 0;
log_info("cc_status:%d\n",
g_app_protocol_param[TYPEC_PORT0].pd_param.pd_callback2->pd_phy_get_cc_status(port, &g_app_protocol_param[TYPEC_PORT0].pd_param));
}
*/
if(old_state != new_state)
{
old_state = new_state;
log_info("port0_typec:%d\n", old_state);
}
typec_state_update();
// 端口接入优先级判断
port_inser_priority_judgment();

20
PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/port0_customized.c

@ -325,8 +325,8 @@ const scp_def_vol_s PORT0_SCP_DEF_VOL[] =
//scp power curve for 0xd0~0xdf.
const scp_power_curve_s PORT0_SCP_POWER_CURVE_BUF[] =
{
{VOLTAGE_9V, CURRENT_2P7A},
{VOLTAGE_10V, CURRENT_2P4A},
{VOLTAGE_9V, CURRENT_2P5A},
{VOLTAGE_10V, CURRENT_2P25A},
// {VOLTAGE_10P5V, CURRENT_2P2A},
// {VOLTAGE_12V, CURRENT_1P7A},
};
@ -923,6 +923,22 @@ void port0_pd_src_cap_init(pd_param_s*pd_param, uint8_t pwr_cnt)
//src ext
pd_param->pd_assist.pd_scedb.scedb_bits.src_pdp = p_cap->src_pdp;
#if HUAWEI_MATEBOOK_X
// 如果是华为matebook_x, 则把PPS档去掉
if(user_app.equipment_is_matebook_x[TYPEC_PORT0])
{
if(p_cap->src_pdp >= 25)
{
pd_param->pd_assist.src_cap_send.pdo_cnt = 5;
// 去掉pps
pd_param->pd_assist.src_cap_send.pd_pdos[5].data32 = 0;
pd_param->pd_assist.src_cap_send.pd_pdos[6].data32 = 0;
}
}
#endif
//pps status
pd_param->pd_assist.pd_ppssdb.byte[0] = 0xff;

36
PD_CPS8860_A1_CPS_Common_Demo/ac_project/code/src/port1_customized.c

@ -325,8 +325,8 @@ const scp_def_vol_s PORT1_SCP_DEF_VOL[] =
//scp power curve for 0xd0~0xdf.
const scp_power_curve_s PORT1_SCP_POWER_CURVE_BUF[] =
{
{VOLTAGE_9V, CURRENT_2P7A},
{VOLTAGE_10V, CURRENT_2P4A},
{VOLTAGE_9V, CURRENT_2P5A},
{VOLTAGE_10V, CURRENT_2P25A},
// {VOLTAGE_10P5V, CURRENT_2P2A},
// {VOLTAGE_12V, CURRENT_1P7A},
};
@ -347,6 +347,23 @@ const scp_cap_features_s PORT1_SCP_CAP_FEATURES =
.cur_reg55 = 0x00,
};
void port1_scp_derate(bool en)
{
if(en)
{
// 降到 4/8。 bit0代表是否降额, 1~3代表降多少, 4~7保留置0
// g_app_protocol_param[TYPEC_PORT1].dpdn_param.qc_scp_param.scp_param.scp_prl_passist.register_value[0xa5] = 0x9;
g_app_protocol_param[TYPEC_PORT1].dpdn_param.qc_scp_param.scp_param.scp_app_passist.derating_ratio = 0x9;
}
else
{
// g_app_protocol_param[TYPEC_PORT1].dpdn_param.qc_scp_param.scp_param.scp_prl_passist.register_value[0xa5] = 0;
g_app_protocol_param[TYPEC_PORT1].dpdn_param.qc_scp_param.scp_param.scp_app_passist.derating_ratio = 0;
}
// log_info("port1_scp_derate:%d\n", en);
}
/*
* @brief port1_scp_register_attr_upgrade
* @param scp_param
@ -921,6 +938,21 @@ void port1_pd_src_cap_init(pd_param_s*pd_param, uint8_t pwr_cnt)
//src ext
pd_param->pd_assist.pd_scedb.scedb_bits.src_pdp = p_cap->src_pdp;
#if HUAWEI_MATEBOOK_X
// 如果是华为matebook_x, 则把PPS档去掉
if(user_app.equipment_is_matebook_x[TYPEC_PORT1])
{
// 该项目的PDO支持PPS档的 cnt都有5个, 所以直接 = 5, 也可以不用判src_pdp
if(p_cap->src_pdp >= 25)
{
pd_param->pd_assist.src_cap_send.pdo_cnt = 5;
pd_param->pd_assist.src_cap_send.pd_pdos[5].data32 = 0;
pd_param->pd_assist.src_cap_send.pd_pdos[6].data32 = 0;
}
}
#endif
//pps status
pd_param->pd_assist.pd_ppssdb.byte[0] = 0xff;

BIN
PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.axf

Binary file not shown.

38
PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.build_log.htm

@ -30,17 +30,24 @@ Rebuild target 'Target 1'
compiling adapter_antifake.c...
assembling startup_CMSDK_CM0.s...
compiling system_CMSDK_CM0.c...
compiling main.c...
compiling cps8860_it.c...
compiling comp_adc.c...
compiling app_spec.c...
..\..\common\app\src\app_spec.c(177): warning: #177-D: variable "umask_val" was declared but never referenced
uint32_t umask_val = 0;
..\..\common\app\src\app_spec.c: 1 warning, 0 errors
compiling comp_adc.c...
compiling comp_primary_side.c...
compiling cps8860_it.c...
compiling port0_customized.c...
compiling port1_customized.c...
compiling comp_auto_zero.c...
compiling main.c...
compiling comp_discharge.c...
compiling comp_powerout.c...
compiling comp_dac.c...
..\code\src\comp_dac.c(311): warning: #177-D: variable "temp" was declared but never referenced
uint32_t temp[TYPEC_PORT_MAX + 1] = {0};
..\code\src\comp_dac.c: 1 warning, 0 errors
compiling comp_protection.c...
compiling customized.c...
..\code\src\customized.c(26): warning: #188-D: enumerated type mixed with another type
adapter_info_s g_adapter_info = {0};
@ -48,27 +55,20 @@ compiling customized.c...
user_app_s user_app = {0};
..\code\src\customized.c(175): warning: #177-D: function "path_scp_mode_exit_action" was declared but never referenced
static void path_scp_mode_exit_action(uint8_t port, scp_param_s *scp_param)
..\code\src\customized.c(1437): warning: #177-D: function "comp_ccloop_enable" was declared but never referenced
..\code\src\customized.c(1539): warning: #177-D: function "comp_ccloop_enable" was declared but never referenced
static void comp_ccloop_enable(uint8_t port)
..\code\src\customized.c: 4 warnings, 0 errors
compiling comp_discharge.c...
compiling comp_protection.c...
compiling comp_powerout.c...
compiling comp_dac.c...
..\code\src\comp_dac.c(307): warning: #177-D: variable "temp" was declared but never referenced
uint32_t temp[TYPEC_PORT_MAX + 1] = {0};
..\code\src\comp_dac.c: 1 warning, 0 errors
compiling dpdn_protocol.c...
compiling qc_scp_protocol.c...
compiling ufcs_protocol.c...
compiling pd_protocol.c...
..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c(816): warning: #550-D: variable "pd_hw_uvdm_header" was set but never used
..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c(827): warning: #550-D: variable "pd_hw_uvdm_header" was set but never used
pd_hw_uvdm_header_u pd_hw_uvdm_header = {0};
..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c(287): warning: #177-D: function "pd_analog_set" was declared but never referenced
..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c(275): warning: #177-D: function "pd_analog_set" was declared but never referenced
static void pd_analog_set(uint8_t port)
..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c: 2 warnings, 0 errors
linking...
Program Size: Code=11602 RO-data=1846 RW-data=60 ZI-data=3848
Program Size: Code=13594 RO-data=1866 RW-data=60 ZI-data=3864
FromELF: creating hex file...
After Build - User command #1: .\CPS8860.bat
C:\Users\TJP\Desktop\GIT_TEST\CPS8860_9196_70W\Anker_9196_CPS8860\PD_CPS8860_A1_CPS_Common_Demo\ac_project\project>set Project_Name=CPS8860_anker_9196
@ -116,11 +116,11 @@ out_type : expected out file type
'd' output binary file(.bin)
[out_file_name_without_postfix] : Option: out file name without postfix.
----------------------------------------------------------------------
input code size: 13,508 [13.191K]
app size: 34C8 ; CRC: 113C
input code size: 15,520 [15.156K]
app size: 3CA4 ; CRC: 149B
out code size : 13,512 [13.195K]
create file: .\output\CPS8860_anker_9196_A1_60_V0.6_CRCCA5F.hex success!
out code size : 15,524 [15.160K]
create file: .\output\CPS8860_anker_9196_A1_60_V0.7_CRC1EBD.hex success!
C:\Users\TJP\Desktop\GIT_TEST\CPS8860_9196_70W\Anker_9196_CPS8860\PD_CPS8860_A1_CPS_Common_Demo\ac_project\project>move /Y .\CPS8860_anker_9196_*.hex .\output
存在一个重名文件,或是找不到文件。
".\Objects\CPS8860_anker_9196.axf" - 0 Error(s), 8 Warning(s).
@ -136,7 +136,7 @@ Package Vendor: ARM
D:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include
<h2>Collection of Component Files used:</h2>
Build Time Elapsed: 00:00:06
Build Time Elapsed: 00:00:13
</pre>
</body>
</html>

1411
PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/CPS8860_anker_9196.htm

File diff suppressed because it is too large

146
PD_CPS8860_A1_CPS_Common_Demo/ac_project/project/Objects/cps8860_Target 1.dep

@ -7,7 +7,7 @@ I (..\..\common\cmsis\ARM\inc\core_cm0.h)(0x6805B2C1)
I (..\..\common\cmsis\ARM\inc\core_cmInstr.h)(0x6805B2C1)
I (..\..\common\cmsis\ARM\inc\core_cmFunc.h)(0x6805B2C1)
I (..\..\common\reg_def\system_CMSDK_CM0.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
I (D:\Keil_v5\ARM\ARMCC\include\stdbool.h)(0x6025237C)
@ -66,9 +66,9 @@ I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)
F (..\..\common\cmsis\ARM\startup_CMSDK_CM0.s)(0x6805B2C1)(--cpu Cortex-M0 --li -g --apcs=interwork --pd "__MICROLIB SETA 1" -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include --pd "__UVISION_VERSION SETA 536" --pd "ARMCM0 SETA 1" --list .\listings\startup_cmsdk_cm0.lst --xref -o .\objects\startup_cmsdk_cm0.o --depend .\objects\startup_cmsdk_cm0.d)
F (..\..\common\app\src\adapter_antifake.c)(0x6805B2C1)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\adapter_antifake.o --omf_browse .\objects\adapter_antifake.crf --depend .\objects\adapter_antifake.d)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
F (..\..\common\app\src\app_spec.c)(0x682E96E8)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\app_spec.o --omf_browse .\objects\app_spec.crf --depend .\objects\app_spec.d)
F (..\..\common\app\src\app_spec.c)(0x686DC4D3)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\app_spec.o --omf_browse .\objects\app_spec.crf --depend .\objects\app_spec.d)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
I (D:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x6025237E)
@ -127,7 +127,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -165,7 +165,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
@ -178,11 +178,11 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
I (..\code\inc\comp_protection.h)(0x685BB00A)
F (..\..\common\app\src\cps8860_it.c)(0x6864F2C6)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\cps8860_it.o --omf_browse .\objects\cps8860_it.crf --depend .\objects\cps8860_it.d)
F (..\..\common\app\src\cps8860_it.c)(0x68662962)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\cps8860_it.o --omf_browse .\objects\cps8860_it.crf --depend .\objects\cps8860_it.d)
I (..\..\common\rom_inc\comp\comp_clock.h)(0x6805B2C1)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
@ -243,11 +243,11 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_dma.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\bc.h)(0x6805B2C1)
@ -281,7 +281,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
@ -294,13 +294,13 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
I (..\code\inc\comp_protection.h)(0x685BB00A)
F (..\..\common\app\src\main.c)(0x685E44CF)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\main.o --omf_browse .\objects\main.crf --depend .\objects\main.d)
F (..\..\common\app\src\main.c)(0x686B710B)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\main.o --omf_browse .\objects\main.crf --depend .\objects\main.d)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
I (D:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x6025237E)
@ -359,7 +359,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -397,7 +397,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
@ -410,11 +410,11 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
F (..\code\src\customized.c)(0x68650588)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\customized.o --omf_browse .\objects\customized.crf --depend .\objects\customized.d)
I (..\code\inc\customized.h)(0x68650506)
F (..\code\src\customized.c)(0x686CE96B)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\customized.o --omf_browse .\objects\customized.crf --depend .\objects\customized.d)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
I (D:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x6025237E)
@ -473,7 +473,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -511,7 +511,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
@ -524,12 +524,12 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
I (..\code\inc\comp_protection.h)(0x685BB00A)
F (..\code\src\port0_customized.c)(0x685A5C2A)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\port0_customized.o --omf_browse .\objects\port0_customized.crf --depend .\objects\port0_customized.d)
F (..\code\src\port0_customized.c)(0x6868F49F)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\port0_customized.o --omf_browse .\objects\port0_customized.crf --depend .\objects\port0_customized.d)
I (..\code\inc\port0_customized.h)(0x6805B2C1)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
@ -590,7 +590,7 @@ I (..\code\inc\common.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -628,7 +628,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
@ -639,13 +639,13 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\code\inc\comp_primary_side.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
F (..\code\src\port1_customized.c)(0x685A82C8)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\port1_customized.o --omf_browse .\objects\port1_customized.crf --depend .\objects\port1_customized.d)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
F (..\code\src\port1_customized.c)(0x686CC3E8)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\port1_customized.o --omf_browse .\objects\port1_customized.crf --depend .\objects\port1_customized.d)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
I (D:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x6025237E)
@ -705,7 +705,7 @@ I (..\code\inc\common.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -743,7 +743,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
@ -754,13 +754,13 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\code\inc\comp_primary_side.h)(0x6805B2C1)
I (..\code\inc\port0_customized.h)(0x6805B2C1)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
F (..\code\inc\config.h)(0x68651B88)()
F (..\code\src\comp_dac.c)(0x6864FBF4)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_dac.o --omf_browse .\objects\comp_dac.crf --depend .\objects\comp_dac.d)
F (..\code\inc\config.h)(0x686D0417)()
F (..\code\src\comp_dac.c)(0x686CD2C6)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_dac.o --omf_browse .\objects\comp_dac.crf --depend .\objects\comp_dac.d)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
@ -818,13 +818,13 @@ I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1)
I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
I (..\..\common\rom_inc\comp\comp_clock.h)(0x6805B2C1)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
@ -860,7 +860,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
I (..\code\inc\comp_primary_side.h)(0x6805B2C1)
@ -872,11 +872,11 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
F (..\..\common\comp\comp\src\comp_powerout.c)(0x6865137B)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_powerout.o --omf_browse .\objects\comp_powerout.crf --depend .\objects\comp_powerout.d)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
F (..\..\common\comp\comp\src\comp_powerout.c)(0x686DC574)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_powerout.o --omf_browse .\objects\comp_powerout.crf --depend .\objects\comp_powerout.d)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\rom_inc\drv\drv_comm.h)(0x6805B2C1)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
@ -932,7 +932,7 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1)
I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -942,7 +942,7 @@ I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_dma.h)(0x6805B2C1)
@ -987,12 +987,12 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
I (..\code\inc\comp_protection.h)(0x685BB00A)
I (..\..\common\comp\comp\inc\comp_auto_zero.h)(0x6805B2C1)
F (..\..\common\comp\comp\src\comp_discharge.c)(0x686516E7)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_discharge.o --omf_browse .\objects\comp_discharge.crf --depend .\objects\comp_discharge.d)
F (..\..\common\comp\comp\src\comp_discharge.c)(0x686CD3F4)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_discharge.o --omf_browse .\objects\comp_discharge.crf --depend .\objects\comp_discharge.d)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_comm.h)(0x6805B2C1)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
@ -1049,13 +1049,13 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1)
I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
I (..\..\common\rom_inc\comp\comp_clock.h)(0x6805B2C1)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
@ -1092,7 +1092,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
I (..\code\inc\comp_primary_side.h)(0x6805B2C1)
@ -1104,7 +1104,7 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
F (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)()
@ -1167,7 +1167,7 @@ I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -1260,14 +1260,14 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1)
I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
I (..\..\common\rom_inc\comp\comp_clock.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_auto_zero.h)(0x6805B2C1)
F (..\code\src\comp_protection.c)(0x6863D5EC)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_protection.o --omf_browse .\objects\comp_protection.crf --depend .\objects\comp_protection.d)
F (..\code\src\comp_protection.c)(0x686CD2F5)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_protection.o --omf_browse .\objects\comp_protection.crf --depend .\objects\comp_protection.d)
I (..\code\inc\comp_protection.h)(0x685BB00A)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
@ -1324,18 +1324,18 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1)
I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
I (..\..\common\rom_inc\comp\comp_clock.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_dma.h)(0x6805B2C1)
@ -1380,7 +1380,7 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
F (..\..\common\comp\comp\src\comp_auto_zero.c)(0x6805B2C1)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\comp_auto_zero.o --omf_browse .\objects\comp_auto_zero.crf --depend .\objects\comp_auto_zero.d)
@ -1440,7 +1440,7 @@ I (..\..\common\rom_inc\drv\drv_scp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1)
I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -1448,7 +1448,7 @@ I (..\..\common\rom_inc\comp\comp_clock.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
F (..\..\common\comp\protocol\dndp_protocol\src\dpdn_protocol.c)(0x6805B2C1)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\dpdn_protocol.o --omf_browse .\objects\dpdn_protocol.crf --depend .\objects\dpdn_protocol.d)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
@ -1510,7 +1510,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -1548,7 +1548,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
@ -1558,16 +1558,16 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\code\inc\comp_primary_side.h)(0x6805B2C1)
I (..\code\inc\port0_customized.h)(0x6805B2C1)
I (..\code\inc\common.h)(0x6805B2C1)
I (..\..\common\comp\protocol\pd_protocol\inc\pd_protocol.h)(0x6805BC94)
I (..\..\common\rom_inc\protocol\task_pd_epr.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
F (..\..\common\comp\protocol\qc_scp_protocol\src\qc_scp_protocol.c)(0x6837BE08)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\qc_scp_protocol.o --omf_browse .\objects\qc_scp_protocol.crf --depend .\objects\qc_scp_protocol.d)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
I (D:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x6025237E)
@ -1626,7 +1626,7 @@ I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -1664,7 +1664,7 @@ I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc30+_protocol.h)(0x6805B2C1)
@ -1677,10 +1677,10 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
F (..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c)(0x6863D008)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\pd_protocol.o --omf_browse .\objects\pd_protocol.crf --depend .\objects\pd_protocol.d)
F (..\..\common\comp\protocol\pd_protocol\src\pd_protocol.c)(0x686D0412)(--c99 --gnu -c --cpu Cortex-M0 -D__MICROLIB --li -g -O2 --apcs=interwork --split_sections -I ..\..\common\cmsis\ARM\inc -I ..\..\common\cmsis\ARM -I ..\..\common\reg_def -I ..\..\common\rom_inc -I ..\..\common\rom_inc\drv -I ..\..\common\rom_inc\comp -I ..\..\common\rom_inc\protocol -I ..\..\common\comp\comp\inc -I ..\..\common\comp\protocol\dndp_protocol\inc -I ..\..\common\comp\protocol\pd_protocol\inc -I ..\..\common\comp\protocol\qc_scp_protocol\inc -I ..\..\common\comp\protocol\tfcp_protocol\inc -I ..\..\common\comp\protocol\ufcs_protocol\inc -I ..\..\common\comp\protocol\vfcp_protocol\inc -I ..\..\common\app\inc -I ..\code\inc --gnu -ID:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0\Include -D__UVISION_VERSION="536" -DARMCM0 -o .\objects\pd_protocol.o --omf_browse .\objects\pd_protocol.crf --depend .\objects\pd_protocol.d)
I (..\..\common\comp\protocol\pd_protocol\inc\pd_protocol.h)(0x6805BC94)
I (..\..\common\cmsis\ARM\inc\core_comm.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x60252374)
@ -1755,15 +1755,15 @@ I (..\..\common\rom_inc\comp\comp_dma.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\task_pd_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\task_pd_pe_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\task_pd_epr.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\code\inc\config.h)(0x68651B88)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_trim.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\app\inc\pd_apple.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\task_pd_apple.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\rom_inc.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\bc.h)(0x6805B2C1)
@ -1793,7 +1793,7 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\ufcs_protocol\inc\ufcs_protocol.h)(0x6805B2C1)
@ -1856,7 +1856,7 @@ I (..\..\common\rom_inc\drv\drv_vfcp_phy.h)(0x6805B2C1)
I (..\..\common\reg_def\vfcp_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\drv\drv_ufcs_phy.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_adc.h)(0x6805B2C1)
I (..\code\inc\config.h)(0x68651B88)
I (..\code\inc\config.h)(0x686D0417)
I (..\..\common\rom_inc\comp\comp_config.h)(0x6864F085)
I (..\..\common\rom_inc\comp\comp_uart.h)(0x6805B2C1)
I (D:\Keil_v5\ARM\ARMCC\include\stdarg.h)(0x60252376)
@ -1892,11 +1892,11 @@ I (..\..\common\rom_inc\protocol\ufcs_flag.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_define.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_prl_func.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\ufcs_pe_func.h)(0x6805B2C1)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x686353D3)
I (..\..\common\comp\comp\inc\comp_powerout.h)(0x6866314B)
I (..\..\common\comp\comp\inc\comp_dac.h)(0x68088E16)
I (..\..\common\comp\comp\inc\comp_discharge.h)(0x6805B2C1)
I (..\..\common\app\inc\app_spec.h)(0x6805B2C1)
I (..\code\inc\customized.h)(0x68650506)
I (..\code\inc\customized.h)(0x686CD1F8)
I (..\..\common\comp\protocol\qc_scp_protocol\inc\qc_scp_protocol.h)(0x6805B2C1)
I (..\..\common\rom_inc\protocol\scp_reg_info.h)(0x6805B2C1)
I (..\..\common\app\inc\adapter_antifake.h)(0x6805B2C1)
@ -1910,5 +1910,5 @@ I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_protocol.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_prl.h)(0x6805B2C1)
I (..\..\common\comp\protocol\tfcp_protocol\inc\tfcp_phy.h)(0x6805B2C1)
I (..\..\common\rom_inc\comp\comp_i2c.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x6805B2C1)
I (..\code\inc\port1_customized.h)(0x686CB3DD)
I (..\..\common\comp\protocol\dndp_protocol\inc\dpdn_protocol.h)(0x6805B2C1)

51
PD_CPS8860_A1_CPS_Common_Demo/common/app/src/app_spec.c

@ -241,14 +241,31 @@ static void adc_sample_value_update(uint8_t port)
{
uint16_t vol[TYPEC_PORT_MAX] = {0,0};
uint16_t cur[TYPEC_PORT_MAX] = {0,0};
bool type_c1_state = 0, type_c2_state = 0;
type_c1_state = (g_app_protocol_param[0].pd_param.typec_status.typec_status == AttachedSRC);
type_c2_state = (g_app_protocol_param[1].pd_param.typec_status.typec_status == AttachedSRC);
vol[port] = comp_adc_get_vin12(port);
cur[port] = comp_adc_get_cur12(port);
g_powerout_info[port].adc_sample_current = cur[port];
g_powerout_info[port].adc_sample_vin = vol[port];
// 单C2口时, 用的是第一路的OPTO, 电流检测也要更改到第一路
// 单C2口时, 没开gate3之前调压,用的是第二路的adc值, 开了gate3之后, 用的是第一路的值
if( !user_app.type_c1_connect
&& user_app.type_c2_connect
&& (port == TYPEC_PORT1))
{
if( REG_ANALOG_GATE3->bf.driver_en )
{
g_powerout_info[port].adc_sample_current = comp_adc_get_cur12(TYPEC_PORT0);
g_powerout_info[port].adc_sample_vin = comp_adc_get_vin12(TYPEC_PORT0);
}
else
{
g_powerout_info[port].adc_sample_current = comp_adc_get_cur12(TYPEC_PORT1);
g_powerout_info[port].adc_sample_vin = comp_adc_get_vin12(TYPEC_PORT1);
}
}
#if POWER_PARALLEL_CONNECT_SUPPORT
if(g_adapter_info.adapter_state == SINGLE_PORT1_INSERT || g_adapter_info.adapter_state == SINGLE_PORT2_INSERT)
{
@ -257,16 +274,12 @@ static void adc_sample_value_update(uint8_t port)
#endif
#if SCP_SUPPORT
g_app_protocol_param[port].dpdn_param.qc_scp_param.scp_param.scp_app_passist.scp_adc_cur = cur[port];
g_app_protocol_param[port].dpdn_param.qc_scp_param.scp_param.scp_app_passist.scp_adc_vol = vol[port];
g_app_protocol_param[port].dpdn_param.qc_scp_param.scp_param.scp_app_passist.scp_adc_cur = g_powerout_info[port].adc_sample_current;
g_app_protocol_param[port].dpdn_param.qc_scp_param.scp_param.scp_app_passist.scp_adc_vol = g_powerout_info[port].adc_sample_vin;
#endif
#if UFCS_SUPPORT
#if UFCS_SUPPORT
g_app_protocol_param[port].dpdn_param.ufcs_param.ufcs_assist.ufcs_adc_vol = vol[port];
g_app_protocol_param[port].dpdn_param.ufcs_param.ufcs_assist.ufcs_adc_cur = cur[port];
#endif
@ -277,19 +290,7 @@ static void adc_sample_value_update(uint8_t port)
g_tfcp_wr_cmd[port].tfcp_Read_Voltage_Current.bf.Ibus = (cur[port] < 100) ? 0 : cur[port];
g_tfcp_wr_cmd[port].tfcp_Charger_Status.bf.Operating_Mode = g_powerout_info[port].cc_mode_flag;
#endif
g_powerout_info[port].adc_sample_current = cur[port];
g_powerout_info[port].adc_sample_vin = vol[port];
// 单C2口时, 用的是第一路的OPTO, 电流检测也要更改到第一路
if( !type_c1_state
&& type_c2_state
&& (port == TYPEC_PORT1))
{
g_powerout_info[port].adc_sample_current = comp_adc_get_cur12(TYPEC_PORT0);
g_powerout_info[port].adc_sample_vin = comp_adc_get_vin12(TYPEC_PORT0);
}
#endif
}
#endif

9
PD_CPS8860_A1_CPS_Common_Demo/common/app/src/cps8860_it.c

@ -32,9 +32,14 @@ void SysTick_Handler(void)
{
system_1ms_cnt++;
#if SWITCH_LINE_OFF_PROTECTION
if( user_app.protection_off_2s )
if( user_app.protection_off_2s[TYPEC_PORT0] )
{
user_app.protection_off_2s--;
user_app.protection_off_2s[TYPEC_PORT0]--;
}
if( user_app.protection_off_2s[TYPEC_PORT1] )
{
user_app.protection_off_2s[TYPEC_PORT1]--;
}
#endif

2
PD_CPS8860_A1_CPS_Common_Demo/common/app/src/main.c

@ -40,6 +40,8 @@ int main(void)
system_1ms_cnt = 0;
usba_detection();
insertion_equipment_judgment();
user_timer_event(TYPEC_PORT0);
user_timer_event(TYPEC_PORT1);
#if USER_NTC_ENABLE
// ntc_judgment();
#endif

2
PD_CPS8860_A1_CPS_Common_Demo/common/comp/comp/inc/comp_powerout.h

@ -399,6 +399,8 @@ void comp_powerout_cc_mode_check(uint8_t port,comp_powerout_info_s *powerout_inf
void comp_powerout_vol_comp_check(uint8_t port,comp_powerout_info_s *powerout_info);
void comp_set_vol_cur(uint8_t port, uint16_t vol, uint16_t cur);
void comp_set_vol(uint8_t port, uint16_t vol);
void comp_set_cur(uint8_t port, uint16_t cur);
#endif

11
PD_CPS8860_A1_CPS_Common_Demo/common/comp/comp/src/comp_discharge.c

@ -64,21 +64,16 @@ void comp_vin12_discharge_config(uint8_t port,uint8_t dis_cur, uint8_t dis_en)
*/
void comp_discharge_vout12(uint8_t port,uint16_t ms, uint8_t dis_cur)
{
bool type_c1_state = 0, type_c2_state = 0;
type_c1_state = (g_app_protocol_param[0].pd_param.typec_status.typec_status == AttachedSRC);
type_c2_state = (g_app_protocol_param[1].pd_param.typec_status.typec_status == AttachedSRC);
log_info("discharge:%d\n", port);
log_info("disc:%d\n", port);
// 单C2时, 用第一路来做升降压, 放电时也要用第一路
if(!type_c1_state && type_c2_state)
if(!user_app.type_c1_connect && user_app.type_c2_connect)
{
// port = TYPEC_PORT0;
g_comp_discharge_info[TYPEC_PORT0].discharge_cnt = (ms / DISCHARGE_WORK_PERIOD);
g_comp_discharge_info[TYPEC_PORT0].discharge_state = (g_comp_discharge_info[TYPEC_PORT0].discharge_cnt != 0);
comp_vin12_discharge_config(TYPEC_PORT0,dis_cur, g_comp_discharge_info[TYPEC_PORT0].discharge_state);
log_info("discharge_1\n");
log_info("disc_1\n");
}
g_comp_discharge_info[port].discharge_cnt = (ms / DISCHARGE_WORK_PERIOD);

65
PD_CPS8860_A1_CPS_Common_Demo/common/comp/comp/src/comp_powerout.c

@ -94,6 +94,18 @@ void comp_set_vol_cur(uint8_t port, uint16_t vol, uint16_t cur)
g_powerout_info[port].power_state = PWR_RDY_CHECK;
}
void comp_set_vol(uint8_t port, uint16_t vol)
{
g_powerout_info[port].set_vol = vol;
comp_powerout_vol_set(port, &g_powerout_info[port], vol);
}
void comp_set_cur(uint8_t port, uint16_t cur)
{
g_powerout_info[port].set_current = cur;
comp_powerout_cur_set(port, &g_powerout_info[port], cur);
}
/*
* @brief powerout init
* @param port
@ -133,7 +145,18 @@ void comp_powerout_init(uint8_t port,comp_powerout_info_s *powerout_info)
*/
void comp_powerout_protect_en(uint8_t port,uint8_t en)
{
// log_info("protect_en:%d\n", en);
// log_info("protect_en:[%d] %d\n", port, en);
// user_app.protect_en = en;
#if SWITCH_LINE_OFF_PROTECTION
// 状态机切换期间,不开启保护,等状态机切换完之后在主循环里再打开。
// 不是状态机切换的话则随时可以关保护
if( user_app.protection_off_flag[port] && en)
{
return;
}
#endif
#ifdef ACDC_2DCDC_2FB
#if PROTECTION_SUPPORT
@ -368,6 +391,7 @@ void comp_powerout_ready_check_machine(uint8_t port,comp_powerout_info_s *powero
/*fixme todo*/
uint16_t vol_d[TYPEC_PORT_MAX] = {0,0};
// uint16_t cur_d[TYPEC_PORT_MAX] = {0,0};
vol_d[port] = abs(powerout_info->adc_sample_vin - powerout_info->set_vol);
// cur_d[port]= abs(powerout_info->adc_sample_current - powerout_info->set_current);
@ -386,42 +410,39 @@ void comp_powerout_ready_check_machine(uint8_t port,comp_powerout_info_s *powero
comp_discharge_cnt_set(port,DELAY_20MS);
}
// log_info("%s %d\n", __func__, __LINE__);
// log_info("vol:%d %d %d %d\n",
// powerout_info->adc_sample_vin,
// comp_adc_get_vin12(0),
// comp_adc_get_vin12(1),
// port);
pwr_rdy[port] = true;
}
else
{
if(!powerout_info->vol_time)
{
#if POWER_PARALLEL_CONNECT_SUPPORT
if(g_adapter_info.adapter_state == SINGLE_PORT1_INSERT || g_adapter_info.adapter_state == SINGLE_PORT2_INSERT)
#if SWITCH_LINE_OFF_PROTECTION
// 两秒期间:
// 1. GT5电压反灌, 调压成功也不能直接打开保护,就一直关着,等下次调压再说。
// 2. 万一一直没调压呢? 那就两秒时间到了,并且保护还是关闭的话,主动打开一下
if( user_app.protection_off_2s[port] != 0 )
{
comp_powerout_protect_en(port,true);
if(powerout_info->powerout_flags.bf.nmos_states)
{
comp_discharge_cnt_set(port,DELAY_20MS);
comp_discharge_cnt_set(port, DELAY_20MS);
}
pwr_rdy[port] = true;
log_info("2--port[%d],pwr_rdy:%d,%d,%d,adc_cur0:%d,adc_cur1:%d\n",port,vol_d[port],vol_dif[port],comp_adc_get_vin12(port),comp_adc_get_cur12(TYPEC_PORT0),comp_adc_get_cur12(TYPEC_PORT1));
log_info("cc0:%d,cc1:%d\n", REG_DAC_CTRL_CC0_CFG->bf.target, REG_DAC_CTRL_CC1_CFG->bf.target);
log_info("cv0:%d,cv1:%d\n",REG_DAC_CTRL_CV0_CFG->bf.target,REG_DAC_CTRL_CV1_CFG->bf.target);
pwr_rdy[port] = true;
}
else
#endif
{
log_info("set_vol:%d\n", powerout_info->set_vol);
log_info("port[%d],fail:%d,%d,%d,adc_vin:%d,%d\n",port,vol_d[port],vol_dif[port],powerout_info->adc_sample_vin,comp_adc_get_vin12(port),COMP_ADC_GET_VIN0_VOL());
comp_protection_exception_flag_set(port,SYS_ERR_PSRDY_FAIL);
comp_protection_exception_flag_set(port, SYS_ERR_PSRDY_FAIL);
// powerout_info->power_state = PWR_SHUTDOWN;
}
#else
log_info("port[%d],fail:%d,%d,%d,adc_vin:%d,%d\n",port,vol_d[port],vol_dif[port],powerout_info->adc_sample_vin,comp_adc_get_vin12(port),COMP_ADC_GET_VIN0_VOL());
// log_info("set_vol:%d\n", powerout_info->set_vol);
comp_protection_exception_flag_set(port,SYS_ERR_PSRDY_FAIL);
#endif
// powerout_info->power_state = PWR_SHUTDOWN;
}
}

48
PD_CPS8860_A1_CPS_Common_Demo/common/comp/protocol/pd_protocol/src/pd_protocol.c

@ -177,24 +177,14 @@ void mtp_pe_other_uvdm_call(uint8_t port,pd_param_s *pd_param)
*/
void pd_phy_open_vbus(uint8_t port)
{
uint16_t delay_20ms_cnt = 20;
adapter_state_check(); // 更新一下状态机看看是否需要更新 new_request_receive_done
adapter_state_check(); // 更新一下状态机看看是否需要更新 wait_c2_switch_done
// C1 + C2情况下, 需要等C2口发送新的src_cap让C2口的负载主动降低拉载。 不要让C1口直接降回5V
// 20ms之后, 才让C1口从原本的电压降到5V打开 C1口的mos
if( user_app.new_request_receive_done )
if( user_app.wait_c2_switch_done && (port == TYPEC_PORT0) )
{
user_app.new_request_receive_done = false;
while(delay_20ms_cnt)
{
delay_20ms_cnt--;
drv_delay_ms(1); // 阻塞的代码里也要让PD状态机能正常响应
pd_protocol_run(TYPEC_PORT0, &g_app_protocol_param[TYPEC_PORT0].pd_param);
pd_protocol_run(TYPEC_PORT1, &g_app_protocol_param[TYPEC_PORT1].pd_param);
mos_switch_control();
log_info("Z");
}
log_info("wait_c2_switch_done\n");
return;
}
if( abs(comp_adc_get_vin12(port) - VOLTAGE_DEFAULT) > 500 )
@ -204,12 +194,15 @@ void pd_phy_open_vbus(uint8_t port)
}
// 放电可能要100~200ms以上
while(abs(comp_adc_get_vin12(port) -VOLTAGE_DEFAULT) > 500)
while(abs(comp_adc_get_vin12(port) - VOLTAGE_DEFAULT) > 500)
{
drv_delay_ms(1); // 阻塞的代码里也要让PD状态机能正常响应
pd_protocol_run(TYPEC_PORT0, &g_app_protocol_param[TYPEC_PORT0].pd_param);
pd_protocol_run(TYPEC_PORT1, &g_app_protocol_param[TYPEC_PORT1].pd_param);
mos_switch_control();
// 如果C2手机走着SCP 9V,C1手机插进来,C1从9V调回5V开MOS期间,SCP需要正常回,不然可能让C2断充
dpdn_protocol_run(TYPEC_PORT0, &g_app_protocol_param[TYPEC_PORT0].dpdn_param);
dpdn_protocol_run(TYPEC_PORT1, &g_app_protocol_param[TYPEC_PORT1].dpdn_param);
}
comp_powerout_open_nmos(port);
@ -403,6 +396,13 @@ void send_new_capability(uint8_t port, pd_param_s*pd_param)
// log_info("send_cap[%d]:%d\n",port, need_send_cap_flag[port]);
pd_param->pd_pe_status.pe_status = PE_SRC_Send_Capabilities;
pd_param->pd_pe_status.pe_process_status = pd_entry_status;
// #if PD_PACKAGE_CONFLICT_SOLVE
// /* 1. 设置tx_ng
// 2.等待sink_tx_time超时。
// 3.超时后没收到包再跳状态机---->即ready状态
// */
// pd_param->pd_callback->pd_phy_set_SinkTxNG(port);
// #endif
}
}
}
@ -446,6 +446,12 @@ void pd_protocol_run(uint8_t port, pd_param_s *pd_param)
{
__enable_irq();
}
// 在prl层 pe_softreset_recived_from_prl = true, 在pe层会清零然后跳到对应状态机
#if HUAWEI_MATEBOOK_X
solve_huawei_matebook(port, pd_param);
#endif
patch_pd_uvdm_for_hw_mate40(port,pd_param);
pd_pe_run(port,pd_param);
// if(pd_param->pd_pe_status.pe_process_status == 0)
@ -464,6 +470,16 @@ void pd_protocol_run(uint8_t port, pd_param_s *pd_param)
send_new_capability(port, pd_param);
#endif
if( pd_param->pd_pe_status.pe_status == PE_Give_Manufacturer_Info
|| pd_param->pd_pe_status.pe_status == PE_SRC_Give_Source_Status
|| pd_param->pd_pe_status.pe_status == PE_SRC_Give_Source_Cap_Ext
|| pd_param->pd_pe_status.pe_status == PE_SRC_Give_Source_Info
)
{
pd_param->pd_pe_status.pe_status = PE_SRC_Send_Not_Supported;
pd_param->pd_pe_status.pe_process_status = pd_entry_status;
}
}
/*

Loading…
Cancel
Save