2025-06-30 4:45 AM
Hello everyone,
I am implementing a DDS-based pulse generator using DMA double buffer technique on my STM32H7. When I run this pulse generator as a standalone project, it works perfectly — the output pulse frequency is accurate and stable.
However, when I integrate LwIP into the same project, I notice that the generated pulse frequency occasionally changes unexpectedly and produces wrong output values. It looks like there is interference or resource conflict when both the DDS pulse generator and LwIP run together.
Has anyone faced similar issues? Is there a recommended way to isolate or manage DMA, timers, and LwIP to avoid such conflicts on STM32H7?
Any suggestions would be greatly appreciated.
Thank you!
2025-06-30 5:10 AM - edited 2025-06-30 6:13 AM
Hello,
I think it's an interrupt priority issue or Task priority issue. That depends on your implementation.
Try to increase the interrupts resources linked to your DDS (TIM, DMA?)
If your DDS implementation is task dependent, increase its task priority.