You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
104 lines
3.1 KiB
104 lines
3.1 KiB
#ifndef __PD_INTERFACE_H__
|
|
#define __PD_INTERFACE_H__
|
|
|
|
#include "pd_app.h"
|
|
#include "hal_define.h"
|
|
|
|
typedef struct
|
|
{
|
|
uint8_t index;
|
|
uint16_t voltage_mV;
|
|
uint16_t max_current_mA;
|
|
} s_pd_power;
|
|
|
|
typedef struct
|
|
{
|
|
uint8_t pd_pdo_cnt;
|
|
s_pd_power pd_pdo[7];
|
|
} s_pd_src_capability;
|
|
|
|
//******************************************************
|
|
// func: src_cap_get
|
|
// param: volt_mV: request voltage in mV;
|
|
// opt_curr_mA: request operation current in mA;
|
|
// max_curr_mA: the maximum current may used in mA;
|
|
// return: result: 1: success;0: fail
|
|
// descr: request the target voltage
|
|
//******************************************************
|
|
s_pd_src_capability pd_src_cap_get(s_pd_param* pd_param);
|
|
|
|
|
|
//******************************************************
|
|
// func: src_pwr_req
|
|
// param: volt_mV: request voltage in mV;
|
|
// opt_curr_mA: request operation current in mA;
|
|
// max_curr_mA: the maximum current may used in mA;
|
|
// return: result: 1: success;0: fail
|
|
// descr: request the target voltage
|
|
//******************************************************
|
|
uint8_t pd_src_pwr_req(uint8_t req_index, s_pd_param* pd_param);
|
|
|
|
|
|
//******************************************************
|
|
// func: src_cap_req
|
|
// param: void
|
|
// return: result: 1: success;0: fail
|
|
// descr: request the src capability
|
|
//******************************************************
|
|
uint8_t pd_src_cap_req(s_pd_flags* pd_flags);
|
|
|
|
|
|
//******************************************************
|
|
// func: src_cap_ext_req
|
|
// param: void
|
|
// return: result: 1: success;0: fail
|
|
// descr: request the src capability extended
|
|
//******************************************************
|
|
uint8_t pd_src_cap_ext_req(s_pd_flags* pd_flags);
|
|
|
|
|
|
//******************************************************
|
|
// func: src_status_req
|
|
// param: void
|
|
// return: result: 1: success;0: fail
|
|
// descr: request the src status
|
|
//******************************************************
|
|
uint8_t pd_src_status_req(s_pd_flags* pd_flags);
|
|
|
|
|
|
//******************************************************
|
|
// func: src_pps_status_req
|
|
// param: void
|
|
// return: result: 1: success;0: fail
|
|
// descr: request the src pps status
|
|
//******************************************************
|
|
uint8_t pd_src_pps_status_req(s_pd_flags* pd_flags);
|
|
|
|
|
|
//******************************************************
|
|
// func: src_manu_info_req
|
|
// param: void
|
|
// return: result: 1: success;0: fail
|
|
// descr: request the src's manufacture information
|
|
//******************************************************
|
|
uint8_t pd_src_manu_info_req(s_pd_flags* pd_flags);
|
|
|
|
|
|
//******************************************************
|
|
// func: src_iden_req
|
|
// param: void
|
|
// return: result: 1: success;0: fail
|
|
// descr: request discover identity
|
|
//******************************************************
|
|
uint8_t pd_src_iden_req(s_pd_flags* pd_flags);
|
|
|
|
|
|
//******************************************************
|
|
// func: hrd_rst_send
|
|
// param: void
|
|
// return: result: 1: success;0: fail
|
|
// descr: hard reset send, it will restart the power
|
|
//******************************************************
|
|
uint8_t pd_hrd_rst_send(s_pd_flags* pd_flags);
|
|
|
|
#endif
|
|
|