Other Parts Discussed in Thread: SFRA, DRV8305, DRV8301, CONTROLSUITE
我想用LAUNCHXL-F28379D和DRV8305EVM学习FCL_SFRA_XL_DualServo例子。
硬件方面,LAUNCHXL-F28379D上JP1至5都断开了,JP6联通;我目前只有一块DRV8305EVM 安装在了LAUNCHXL-F28379D的J1至J4接口,并且接入40V直流电,暂未连接电机。
代码方面,在FCL_379XL的样例中,FCL_SFRA_XL_DualServo-Settings.h中只更改了
#define MOTOR1_DRV DRV8305以及
#define SAMPLING_METHOD SINGLE_SAMPLING
其余均为更改。
当我运行FCL_LEVEL1时,主函数总会停在下面这段代码的地方,所以我并不能观测到IsrTicker++
#if (MOTOR1_DRV == DRV8301)
InitDRV8301Regs(&motor1, DRV1_GAIN); // Init DRV regs' mirror variables
// motor1.drv8301.cntrl_reg1.bit.PWM_MODE = drv8301_pwmMode_6;
InitDRV8301(&motor1);
while (motor1.drv8301.DRV_fault) ; // hang on if drv init is faulty
#elif (MOTOR1_DRV == DRV8305)
InitDRV8305Regs(&motor1, DRV1_GAIN);
// motor1.drv8305.cntrl7_gd.bit.PWM_MODE = drv8305_PWM_mode_6;
InitDRV8305(&motor1);
while (motor1.drv8305.DRV_fault) ; // hang on if drv init is faulty
#endif
请问是什么问题造成的初始化DRV8305失败呢?