cancel
Showing results for 
Search instead for 
Did you mean: 

ST7FMC1 PWM CONFIGURATION

jinbao78
Associate II
Posted on May 05, 2008 at 08:29

ST7FMC1 PWM CONFIGURATION

4 REPLIES 4
jinbao78
Associate II
Posted on May 17, 2011 at 10:15

Hello everyone,

who configured the OSC(0~2) bits of register MCRB to accelerate the current demagnetizaiton successibly? May you share your successive experience? now whether I configure it, the motor run abnornally, if I set PWM on the high side by OSC2, it works well, but the demagnetization time is so long.

gaetano
Associate II
Posted on May 17, 2011 at 10:15

Hi,

I advise you to consult the following Application Notes dedicated to Motor Control with ST7MC and ST72141:

http://www.st.com/mcu/Literature-Motor_Control-All-none.html

Regards,

Tanio

jinbao78
Associate II
Posted on May 17, 2011 at 10:15

I used ST7FMC1K2T6, to detect zero-crossing during PWM-OFF, when I set the OS[0:2] bit as 000, and the MCRB is configured as the following:

#define mem_CCW_MCRB1 ((u8)112) // HDM & SDM, rising BEMF

#define mem_CCW_MCRB2 ((u8)32) // HDM, falling BEMF

#define mem_CCW_MCRB3 ((u8)112) // HDM & SDM, rising BEMF

#define mem_CCW_MCRB4 ((u8)32) // HDM, falling BEMF

#define mem_CCW_MCRB5 ((u8)112) // HDM & SDM, rising BEMF

#define mem_CCW_MCRB6 ((u8)32) // HDM, falling BEMF

the motor works well, but demagnetization is invalid,

if I changed it as the following:

#define mem_CCW_MCRB1 ((u8)112) // HDM & SDM, rising BEMF

#define mem_CCW_MCRB2 ((u8)36) // HDM, falling BEMF

#define mem_CCW_MCRB3 ((u8)112) // HDM & SDM, rising BEMF

#define mem_CCW_MCRB4 ((u8)36) // HDM, falling BEMF

#define mem_CCW_MCRB5 ((u8)112) // HDM & SDM, rising BEMF

#define mem_CCW_MCRB6 ((u8)36) // HDM, falling BEMF

when the motor works well at low speed, but it works abnormally at higher speed.

the first step is mem_CCW_MCRB2 during FORCED commutation.

gianluigi
Associate II
Posted on May 17, 2011 at 10:15

Hello Jinbao,

I have used the following configuration

#define mem_CCW_MCRB1_SCM ((u8)80) // SDM, rising BEMF

#define mem_CCW_MCRB2_SCM ((u8)20) // SDM, falling BEMF + PWM LOWSIDE

#define mem_CCW_MCRB3_SCM ((u8)80) // SDM, rising BEMF

#define mem_CCW_MCRB4_SCM ((u8)20) // SDM, falling BEMF + PWM LOWSIDE

#define mem_CCW_MCRB5_SCM ((u8)80) // SDM, rising BEMF

#define mem_CCW_MCRB6_SCM ((u8)20) // SDM, falling BEMF + PWM LOWSIDE

I have used only Software demagnetization of 340us and it worked ok.

It is possible that when it is set the HDM the microcontroller miss the demagnetization event?

Best regards

Gigi