cancel
Showing results for 
Search instead for 
Did you mean: 

Is there a maximum speed with DMA? (F446RE)

YSall.1
Senior

Hi, I am using DMA to generate an arbitrary waveform on PIN PA_8 using TIM1_CH1.

My HCLK is at 180MHZ, APB2 timer clock at 180 MHz and APB2 peripheral clocks at 90 MHZ.

Even though having this clock, when comparing the oscilloscope and the value of ARR register I have a frequency of approximately 56 MHZ.

Do you have an idea about it?

1 ACCEPTED SOLUTION

Accepted Solutions

No you were wrong about this problem, I found out it was just power regulator voltage that was influencing the performance

View solution in original post

5 REPLIES 5
MM..1
Chief II

Idea ??? TIM is timer generate 0 1 at defined duty and freq. Maybe you can write what you do.

DMA only changes this params. Max clock is one time set duty 1:1 and clk 90MHz.

If for example you use PWM 10bit res , then clk is max / 1024 ...

>>Do you have an idea about it?

DMA transaction from memory and over the buses, still takes several cycles.

For the sake of argument say 3 or 4, and you still want to share resources with the MCU and other things you might need to do.

If you're trying to modulate something at high speeds, consider using a CPLD, or a pattern on a SPI wire, etc.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

Thanks for your response. I don't try to modulate a signal but just to create my own event generator with a resolution of 100 ns, I would like just to dertermine the frequency in this case so I could create a general formula to compute ARR register and corresponding delay values

No you were wrong about this problem, I found out it was just power regulator voltage that was influencing the performance

Power Regulator Voltage was the key to resolve this problem, so DMA is fine 👌