Showing results for 
Search instead for 
Did you mean: 

STM32H7 using HRTIM for PWM waveform generation in DMA Burst Mode not working

C Ro

Hi everyone!

I'd like to use the HRTIM Master Timer Period on my NUCLEO-H743ZI2 to trigger a synchronous Burst DMA Update to HRTIM TIMA, TIMB, TIMC Compare Match registers.

Two timer Outputs for each timers are supposed to generate a PWM and Inverted PWM signal with deadtime inserted. For triggering the signal level change I am using TIMA, TIMB and TIMC compare matches on outputs 1 + 2 for each timer.

The values for the compare match registers are stored in a DMA buffer lookup table static uint32_t  lut[1000][3] with 1000 entries for each of the 3 compare register.

The problem is, that this particular DMA is not working, e.g. the PWM Modules duty cycles are not updated. The lookup table values are calculated correctly.

It would be very nice if you could hava a look at the code or provide me a working example of HRTIM and burst DMA on a H7 controller. Thank you very much!

Attached you find a minimum running example of my code.

I am using CubeIDE v 1.12.1


hello,did you solve your problem.My software using DMA also failed to transfer PWM.If so, can you tell me how to fix it

Thank you very much!