swxxxw 发表于 2018-9-21 17:10:53

STM32F302使用ADC+DMA的方案,采集大数据出错

我先列一下我的几组测试对比。现在手头有一块303的,一块302的.一、303的片子:基本参数 ,AD时钟36MHZ,采样时间7.5Cycles,定时器触发时间4.16us。采集大数据量波形不失真。

二、302的片子:基本参数, AD时钟36MHZ,采样时间7.5Cycles,定时器触发时间4.16us。1、DMA搬数132点,长时间工作波形正常;2、我想实现DMA搬数2112点,其他参数不变,只改变DMA的搬运点数,工作前5分钟波形一直比较稳定,接下来,随着时间的推移波形逐渐失真;3、奇怪的是,我不断电源,断开仿真器,重连仿真器,再运行,波形还是失真的厉害,必须要断开电源,波形才能恢复正常。

三、两块片子硬件上有差异,不排除硬件问题,想请大家先分析下软件上有什么可能出错的地方。
四、两块片子的程序,DMA+ADC的框架一致。
五、波形变化图:


六、一个星期了,没找到解决办法,尝试修改ADC时钟,采样时间,定时器触发时间,都没能解决302片子的异常问题,请给位大佬帮忙分析分析。

swxxxw 发表于 2018-9-25 09:24:34

顶一下

50031185 发表于 2018-9-29 10:09:13

你有没有带系统? 用的什么库?

z258121131 发表于 2018-9-29 15:23:19

顶一下。可以看下是没有收到数据还是数据错误

yygkqzh 发表于 2018-9-29 20:04:11

你看看两者硬件上有没有什么区别

watershade 发表于 2018-9-29 22:43:24

有个简单的方法可以看一下你的硬件有没有问题。你不是说开一段时间就波形失真吗?不妨插上电之前,一直按着复位键。等上一分钟,然后看波形是不是正常。如果不正常,可以确定是硬件问题。(或者软件加延时也成。)
但如果正常,也不能排除一定不是硬件问题。需要稍后再分析一下。最好用示波器从加电开始一直检测。

swxxxw 发表于 2018-10-10 09:52:02

50031185 发表于 2018-9-29 10:09
你有没有带系统? 用的什么库?

你好,我没有使用操作系统。
库信息如下:
* @authorMCD Application Team
* @version V1.2.3
* @date    10-July-2015

swxxxw 发表于 2018-10-10 09:54:33

watershade 发表于 2018-9-29 22:43
有个简单的方法可以看一下你的硬件有没有问题。你不是说开一段时间就波形失真吗?不妨插上电之前,一直按着 ...

你好目前板子上没有加复位电路,我可以尝试加一个复位电路,按照你的方法测试一下。另外一个情况我请教一下,就是我是在线仿真调试,波形失真至以上情况后,我不断电,软件复位波形还是失真,是否能排除软件问题呢?

swxxxw 发表于 2018-10-10 09:57:39

yygkqzh 发表于 2018-9-29 20:04
你看看两者硬件上有没有什么区别

你好,硬件问题其他的工程师在排查,我很苦恼:(

swxxxw 发表于 2018-10-10 10:00:14

z258121131 发表于 2018-9-29 15:23
顶一下。可以看下是没有收到数据还是数据错误

你好,目前问题锁定在:ADC转换和DMA从ADC搬数,这两个环节上。现在在考虑不使用DMA的方式,用CPU搬数,看看数据是否出错
页: [1] 2
查看完整版本: STM32F302使用ADC+DMA的方案,采集大数据出错