I have been trying to implement dead time on the Arduino Due board using complementary PWM outputs in order to control H-bridge inverter. On the first view, my program code works, but not completely correct. Actually, two problem are appeared :
- at the beginning and in the end of the output signals I get overlaps - dead time in this two points does not have reaction
- if I adjust constant modulation signal instead of sin, every some time I can see bigger value of the dead time than adjusted value in the program code.
Does anybody know how I can solve this problem? Maybe, I cannot see some detail which makes this problem.
One part of my program code is :
PWMC_ConfigureChannelExt(PWM, 0, PWM_CMR_CPRE_CLKA, PWM_CMR_CALG, 0, PWM_CMR_CES, PWM_CMR_DTE, 0, 0); PWMC_SetPeriod(PWM, 0, cprd); PWMC_SetDutyCycle(PWM, 0, Ton1); PWMC_SetDeadTime(PWM, 0, DeadTimeHigh, DeadTimeLow);