This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DRV8304: DRV8304

Part Number: DRV8304

Hi, 

We are using DRV8304 IC for driving BLDC motor , It is configured in hardware interface.

The mode we have set is , 1x PWM Mode

we are giving INHA pin PWM input Wave from - 15Khz.

INLA, INHB, and INLB pins are connected to microcontroller GPIO pins , 

Enable , INHC ( DirCntr)  and INLC ( Brake ) are also connected to gpio pins.

Please provide sequence or code in details for 6 step commutation.

regards

illiyaz baig  

  • Hello Illiyaz,

    Welcome to the forum and thank you for your question. The PWM output from your microcontroller into INHA determines the frequency and duty cycle of the gate drivers.

    Are you using a sensored or sensorless setup for you motor? If you are using sensors you can connect the hall sensor outputs directly to INLA, INHB, and INLB to the DRV8304.

    The 6 step commutation follows the table pictured below (page 18 of DRV8304 datasheet): 

    Based on the position of the rotor the output of the hall sensors will automatically drive the rotor to the next positions as long as it is receiving a PWM signal from the external MCU. If you are attempting to create a sensorless setup we unfortunately do not have code to share for this, but we do have a reference design that you can look at to help you implement sensorless control. Keep in mind that this design does use 3xPWM in order to implement sensorless trapezoidal control: https://www.ti.com/tool/TIDA-010031

    Best,

    Isaac

  • Hello Illiyaz,

    Do you need any further help on this thread?

    Thanks,

    Matt

  • Hi Illiyaz,

    I'm going to go ahead and close this thread. If you have further questions, please click the "Ask a related question" button.

    Thanks,

    Matt