关于dma能否提供实时性地处理
小弟在做项目时遇到问题,用到的是STM32f407用dma传输adc信号对信号做fft处理,不能遗漏任何一段adc信息,但是发现每次dma储存都需要很长时间1ms左右,那这1ms的信息就被浪费了,想问下不是dma不是不占用主程序时间么,有没有什么更好的方法这个1ms应该是ADC转换所需的时间,不是DMA拖后腿,在这个时间内CPU去干其他任务,没有浪费。 感觉是你设置问题,还有就是你的1ms时间怎么来的,STM的ADC最高的转换速率可以达到1M。至于DMA,其实只要配置好了,ADC采样成功,就会把数据转移到数据缓冲的,这个速度相对adc采样来说,是很快的。。。当然了,如果你这个DMA也处理其他请求的话,或许会有漏(这里要考虑优先级),但是绝对不会达到ms级别。。。 先调通串口能发能收,再开启DMA接收功能
页:
[1]