|
|
@@ -263,9 +263,10 @@ void SVPWM_7(alpha_beta_t *alpha_beta, float vbus, u32 PWM_half_period, phase_ti
|
|
|
break;
|
|
|
}
|
|
|
ModuleTime(&T1, &T2, PWM_half_period);
|
|
|
+ /*
|
|
|
u32 ta = (PWM_half_period - T1 - T2) / 2;
|
|
|
u32 tb = ta + T1 ;
|
|
|
- u32 tc = tb + T2 ;
|
|
|
+ u32 tc = tb + T2 ; */
|
|
|
switch(sector) {
|
|
|
case SECTOR_1: // 3
|
|
|
A_duty = (PWM_half_period - T1 - T2) / 2;
|
|
|
@@ -286,36 +287,36 @@ void SVPWM_7(alpha_beta_t *alpha_beta, float vbus, u32 PWM_half_period, phase_ti
|
|
|
high = C_duty;
|
|
|
break;
|
|
|
case SECTOR_3: // 5
|
|
|
- A_duty = tc;
|
|
|
- B_duty = ta;
|
|
|
- C_duty = tb;
|
|
|
+ B_duty = (PWM_half_period - T1 - T2) / 2;
|
|
|
+ C_duty = B_duty + T1;
|
|
|
+ A_duty = C_duty + T2;
|
|
|
|
|
|
low = B_duty;
|
|
|
midle = C_duty;
|
|
|
high = A_duty;
|
|
|
break;
|
|
|
case SECTOR_4: // 4
|
|
|
- A_duty = tc;
|
|
|
- B_duty = tb;
|
|
|
- C_duty = ta;
|
|
|
+ C_duty = (PWM_half_period - T1 - T2) / 2;
|
|
|
+ B_duty = C_duty + T1;
|
|
|
+ A_duty = B_duty + T2;
|
|
|
|
|
|
low = C_duty;
|
|
|
midle = B_duty;
|
|
|
high = A_duty;
|
|
|
break;
|
|
|
case SECTOR_5: // 6
|
|
|
- A_duty = tb;
|
|
|
- B_duty = tc;
|
|
|
- C_duty = ta;
|
|
|
+ C_duty = (PWM_half_period - T1 - T2) / 2;
|
|
|
+ A_duty = C_duty + T1;
|
|
|
+ B_duty = A_duty + T2;
|
|
|
|
|
|
low = C_duty;
|
|
|
midle = A_duty;
|
|
|
high = B_duty;
|
|
|
break;
|
|
|
case SECTOR_6: // 2
|
|
|
- A_duty = ta;
|
|
|
- B_duty = tc;
|
|
|
- C_duty = tb;
|
|
|
+ A_duty = (PWM_half_period - T1 - T2) / 2;
|
|
|
+ C_duty = A_duty + T1;
|
|
|
+ B_duty = C_duty + T2;
|
|
|
|
|
|
low = A_duty;
|
|
|
midle = C_duty;
|