Hi,
we are exploring the 1pwm method for DRV3245Q-Q1 Motor Driver.nfault pin is outputting high and when commutation is applied nfault is being pulled low.
We read SPI registers(ICStatus0,ov/vds,VGS,ICStatus1,ICStaus2) and there are no fault bits set in these registers and ICStatus0 indicates predriver is enabled(DRV_STAT) and gatedrive(address 0x07) is
also indicating correct status(ENABLE_DRV is 1 and PWM_COM is 0 and PWM_MODE IS 10).we are initializing Gate drive(0x07) and VDS registers only through SPI.If commutation is disabled ,we see nFAULT pin remains high.
In commutation we are doing following:
if(firsttimedone == FALSE)
{
//Apply INHC = Low to run motor in CCW
Dio_Write(highside3, 0);
//Apply INLC = high to motor Running
Dio_Writel(loside3, 1);
firsttimedone = TRUE;
}
//Control INLA = HALL-A,INHB = HALL-B,INLB = HALL-C as per Hall States for 1-PWM Mode
Dio_Write(LoSide1, HS1);
Dio_Write(HiSide2, HS2);
Dio_Write(LoSide2, HS3);
/Apply PWM on INHA for 1-PWM Mode
Pwm_SetDutyCycle(Highside1, DutyCycle);
For other direction:
if(onetimedone == FALSE)
{
//Apply INHC = Low to run motor in CCW
Dio_Write(HiSide3, 1);
//Apply INLC = high to motor Running
Dio_Write(LoSide3, 1);
onetimedone = TRUE;
}
//Control INLA = HALL-A,INHB = HALL-B,INLB = HALL-C as per Hall States for 1-PWM Mode
Dio_Write(LoSide1, HS1);
Dio_Write(HiSide2, HS2);
Dio_Write(LoSide2, HS3);
//Apply PWM on INHA for 1-PWM Mode
Pwm_SetDutyCycle(HI_1, DutyCycle);
Could you please guide it in right direction since there are some faults that can happen and are not reported only through nFault but not through SPI.
Thanks,
P Tulasi Krishna.