请问F429中提高通信速度后SPI+DMA接收AD芯片数据不对是什么原因?

2019-07-14 18:32发布



总体描述:      利用STM32F429中的SPI通信方式,来为AD7357芯片提供采样时钟,并且获取采集的数据,SPI配置为只接受模式,再加上DMA方式存储SPI获得的数据。(测试信号100KHz正弦信号,代码后面贴出来)请大家帮我看看,谢谢
问题:当SPI使用32分频(1.4MHz的sck)的时候能够采集到正确的信号,但是16分频(sck=2.8MHz)就不能采样到准确的信号?





友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
18条回答
wang222221
2019-07-17 00:00
htxk 发表于 2018-8-16 10:09
啊啊,我直接是定义了一个数组变量ADC_ConvertedValue[500],然后让DMA指向这个数组,当500个数据存入了这个数组后,再在DMA完成中断服务函数中打印出、

好像我理解的太简单了,随意定义一个数组就可以装数据了。请问下@maxtch 我该如何去解决这个,请给与指点啊,谢谢你 ...

我做嵌入式到现在还没用到过这么大数据流量用单片机处理的东西,到了这种数据吞吐我一般就直接上能跑 Linux 的高速 SoC 了。

DMA 的内存分配往往有特殊要求,你要看芯片手册里面是怎么描述的。

一周热门 更多>