AnsweredAssumed Answered

Troubles with TIM1 PWM generation via DMA.

Question asked by shein.vladimir on Jan 19, 2016
Hello. I have some troubles when implementing PWM generation on the timer TIM1. I use STM32 HAL Library. I have to update the values of registers CC1…CC3 each time when TIM_UPDATE event happens. I planned to use 2 memory chunk for it. When the first one is used as a "warehouse" of the values that DMA will provide to TIM1 CC1…CC3 values, I'll use the second to fill it up with the new values. I think to implement this with DMA. I tried to do it through the function HAL_TIM_PWM_Start_DMA but without success. This function can be only called for a single channel but I need to enable generation on 3 channels simultaneously. Sequential calls to HAL_TIM_PWM_Start_DMA for any another channel returns HAL_BUSY. Besides of that I tried to use the function HAL_TIM_DMABurst_WriteStart but also without success. I need to transfer much more 18×4 words.

Ok, I solved my problem. Thanks! :)