打印
[STM32F4]

使用STM32F429的GPIO模拟SPI与ADC交互读取数据

[复制链接]
1009|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zzzhangliyuan|  楼主 | 2021-3-18 18:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我们现在要采集一个1.8K的正弦信号,选择了200K的ADC,片子型号是AD7606,我们使用了STM32F429获取数据,使用其GPIO模拟了SPI的通信,利用中断的方法进行读取数据。但是现在存在的问题是200K的采样速率使得STM32一直在交互获取数据,而没有办法进行其他操作。在中断中读出数据,通过串口打印出来数据是对的,但是当我们设置一个数组,读取的数据就放在这个数组中,然后采集一段时间之后关闭中断来处理这些数据,发现数据之错误的。
面对

使用特权

评论回复
评论
zzzhangliyuan 2021-3-18 19:02 回复TA
话没说完就不小心发出去了。。面对这个问题,大家能不能帮忙解决一下,是我们的方法是错误的还是什么问题。有没有那种ADC,就是200K以上16位的,内部存在存储的,我们隔一段时间读取一些数据? 
沙发
zzzhangliyuan|  楼主 | 2021-3-18 19:03 | 只看该作者
话没说完就不小心发出去了。。面对这个问题,大家能不能帮忙解决一下,是我们的方法是错误的还是什么问题。有没有那种ADC,就是200K以上16位的,内部存在存储的,我们隔一段时间读取一些数据?

使用特权

评论回复
板凳
香水城| | 2021-3-19 08:14 | 只看该作者
MCU有那么多SPI为什么要用GPIO模拟呢? 如果使用硬件SPI配合DMA的话,CPU就轻松很多,可以去做点其它要紧的事情。

至于数组数据出错,应该代码处理方面的问题 不难查出问题的。

使用特权

评论回复
地板
zzzhangliyuan|  楼主 | 2021-3-19 14:00 | 只看该作者
香水城 发表于 2021-3-19 08:14
MCU有那么多SPI为什么要用GPIO模拟呢? 如果使用硬件SPI配合DMA的话,CPU就轻松很多,可以去做点其它要紧的 ...

谢谢,我们试试

使用特权

评论回复
5
gwsan| | 2021-4-8 11:16 | 只看该作者
这个采集频率肯定没有问题

使用特权

评论回复
6
kxsi| | 2021-4-8 11:54 | 只看该作者
估计是数组数据处理的不好

使用特权

评论回复
7
nawu| | 2021-4-8 11:54 | 只看该作者
spi不要用模拟的

使用特权

评论回复
8
qcliu| | 2021-4-8 11:59 | 只看该作者
模拟很容易出现时序错误

使用特权

评论回复
9
tfqi| | 2021-4-8 12:12 | 只看该作者
不能采集一段时间处理 要及时处理数据

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

45

主题

153

帖子

6

粉丝