一、写入清除电池电压寄存器组指令步骤
1.拉低CSB电平;
2.发送清除电池电压寄存器组指令(0x07 0x11);
3.通过PEC计算函数计算清除电池电压寄存器组指令的PEC校验码并发送;
4.拉高CSB电平。
二、清除电池电压寄存器组函数
//LTC6804_clrcell:清除电池电压寄存器组函数
void LTC6804_clrcell(Uint8 parallel){
Uint8 i;
Uint8 cmd[4];
Uint16 cmd_pec;
cmd[0] = 0x07;
cmd[1] = 0x11;
cmd_pec = pec15_calc(2,cmd);
cmd[2] = (Uint8)(cmd_pec>>8);
cmd[3] = (Uint8)(cmd_pec);
wakeup_idle(parallel);
LTC6804_CS(parallel,0);
for(i = 0;i<4;i++){
SPIA_SendReciveData(cmd[i]);
}
LTC6804_CS(parallel,1);
}
三、写入清清除辅助寄存器组指令步骤
1.拉低CSB电平;
2.发送清除辅助寄存器组指令(0x07 0x12);
3.通过PEC计算函数计算清除辅助寄存器组指令的PEC校验码并发送;
4.拉高CSB电平。
四、清除辅助寄存器组函数
//LTC6804_clraux:清除辅助寄存器组函数
void LTC6804_clraux(Uint8 parallel){
Uint8 i;
Uint8 cmd[4];
Uint16 cmd_pec;
cmd[0] = 0x07;
cmd[1] = 0x12;
cmd_pec = pec15_calc(2,cmd);
cmd[2] = (Uint8)(cmd_pec>>8);
cmd[3] = (Uint8)(cmd_pec);
wakeup_idle(1);
LTC6804_CS(parallel,0);
for(i = 0;i<4;i++){
SPIA_SendReciveData(cmd[i]);
}
LTC6804_CS(parallel,1);
}
五、写入清除状态寄存器组指令步骤
1.拉低CSB电平;
2.发送清除状态寄存器组指令(0x07 0x13);
3.通过PEC计算函数计算清除状态寄存器组指令的PEC校验码并发送;
4.拉高CSB电平。
六、清除状态寄存器组函数
//LTC6804_clrstat:清除状态寄存器组函数
void LTC6804_clrstat(Uint8 parallel){
Uint8 i;
Uint8 cmd[4];
Uint16 cmd_pec;
cmd[0] = 0x07;
cmd[1] = 0x13;
cmd_pec = pec15_calc(2, cmd);
cmd[2] = (Uint8)(cmd_pec >> 8);
cmd[3] = (Uint8)(cmd_pec);
wakeup_idle(1);
LTC6804_CS(parallel,0);
for(i=0;i<4;i++){
SPIA_SendReciveData(cmd[i]);
}
LTC6804_CS(parallel,1);
}