синхронизация шим после изменения частоты
This commit is contained in:
parent
44cfb121d4
commit
9a7c7c5829
@ -59,7 +59,11 @@ void pwm_set_volt_3F(float phaseA, float phaseB, float phaseC, float Udc, uint16
|
||||
if(PeriodPWM[0] > PERIOD_MOTOR) PeriodPWM[0]=PERIOD_MOTOR;
|
||||
PeriodPWM[1] = PeriodPWM[0];
|
||||
vectorRegKoeffRecalc(PeriodPWM[0]/PERIOD_MOTOR);
|
||||
EALLOW;
|
||||
CpuSysRegs.PCLKCR0.bit.TBCLKSYNC = 0;//
|
||||
EPwmRegs[PWM_A]->TBPRD = EPwmRegs[PWM_B]->TBPRD = EPwmRegs[PWM_C]->TBPRD = PeriodPWM[0];
|
||||
CpuSysRegs.PCLKCR0.bit.TBCLKSYNC = 1;// синхронный запуск таймеров
|
||||
EDIS;
|
||||
PeriodPWM_2 = PeriodPWM[0]/2;
|
||||
EPwmRegs[11]->TBPRD = PeriodPWM[0]*2-1;
|
||||
PWM_SDFM_delay = 2*PeriodPWM[0] - 5000;
|
||||
@ -104,7 +108,6 @@ void pwm_set_volt_3F(float phaseA, float phaseB, float phaseC, float Udc, uint16
|
||||
EPwmRegs[PWM_A]->CMPA.bit.CMPA = PeriodPWM[0] - PWM_motor.UA;
|
||||
EPwmRegs[PWM_B]->CMPA.bit.CMPA = PeriodPWM[0] - PWM_motor.UB;
|
||||
EPwmRegs[PWM_C]->CMPA.bit.CMPA = PeriodPWM[0] - PWM_motor.UC;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user