冠达快充板(SOURCE)通讯协议 2025.9.25 SOURCE的ID为2,波特率200K,TTL 1.读取数据 发送: 0B 00 02 20 volh voll curh curl nc nc CRC8 //长度+nc+id+指令+2字节当前电源电压(mV)+2字节当前电源电流(mA)+2个预留字节+CRC8校验 回复: 15 00 02 20 VH VL setvh setvl setch setcl NC NC verh verl NC NC NC NC NC NC CRC8 //长度+nc+ID+指令+2字节读取的电压(0.01V)+2字节source设置电压(mV)+2字节source设置电流(mA)+2字节预留+2字节版本号+6字节预留+CRC8校验 2.读取source的PD协议数据(当前为PDO,PPS,PD3.1,AVS协议时有效,不需要一直读,暂未实现) 发送:05 00 02 13 2A 回复: XX 00 02 13 //长度(根据实际计算)+NC+ID+指令 00 00 VMINH VMINL VMAXH VMAXL CURH/PORH CURL/PORL NC NC NC NC NC NC //源类型(1字节,00为PDO,03为APDO) + PPS类型(1字节,源类型为3时有效,00为SPR PPS,01为EPR AVS,02为SPR AVS) + 最小电压(2字节,mV) + 最大电压(2字节,mA) + 最大电流/功率(2字节,mA/W,EPR_AVS时为功率) + 预留(6字节,当协议类型为02时有效,意义与前6字节一致) 00 00 VMINH VMINL VMAXH VMAXL CURH/PORH CURL/PORL NC NC NC NC NC NC ...... CRC8 3.设置CC线电平 发送: 06 00 02 16 00 2A //长度+nc+id+指令+电平等级(0xff为根据当前电流自动设置,否则为手动设定,设置方法待定)+CRC8校验 回复: 05 00 02 16 2A //长度+nc+id+指令+CRC8校验 4.设置支持的快充协议 (PDO和PD3.1固定档位最大电压和最小电压设为一样) 发送: XX 00 02 D0 //长度(根据实际计算)+NC+ID+指令 00 //协议(1字节) 00 00 VMINH VMINL VMAXH VMAXL CURH CURL NC NC NC NC NC NC //源类型(1字节,PD协议有效,00为PDO,03为APDO) + PPS类型(1字节,PD协议有效,源类型为3时有效,00为SPR PPS,01为EPR AVS,02为SPR AVS) + 最小电压(2字节,mV) + 最大电压(2字节,mA) + 最大电流(2字节,mA) + 预留(6字节,当协议类型为02时有效,意义与前6字节一致) 00 00 VMINH VMINL VMAXH VMAXL CURH/PORH CURL/PORL NC NC NC NC NC NC ...... CRC8 回复: 05 00 02 D0 CRC8 协议字节含义如下: 00 无快充 01 VIFC(暂不支持) 02 FCP 03 SCP 04 预留 05 预留 06 RFC(暂不支持) 07 QC3.0 08 QC2.0 09 AFC 0A PDO/PPS 0B 预留 0C UFCS 0D PD3.1/AVS 0E VOOC(暂不支持) CRC8校验算法如下: u8 get_crc(u8 *dat,u8 k) { u8 i,res; res=0x55; for(i=0;i>=1;res|=0x80;}// else{res>>=1;} dat>>=1; } return res; }