我现在用的是STM32L492 DMA2, 一共支持7个通道,其中ADC1,ADC3已经占用了DMA2 3/5两个通道。UART1之前采用中断方式,和ADC互不相关,程序运行正常。为了提高系统效率,现将UART1由中断改为DMA方式,占用了DMA2 6/7通道. 结果问题来了, ADC刷新变慢,UART1也经常丢包。个人感觉DMA2在这里是个瓶颈, 在多通道复用上可能有些问题没考虑到。请问哪位在DMA上有类似经验? |
你的ADC速度是多少的?DMA传输其实在和CPU争时间,如果太多在争导致排队有可能会阻塞。 |