硬汉嵌入式论坛

 找回密码
 立即注册
查看: 5063|回复: 12
收起左侧

[有问必答] ad7606—fsmc无法连续采集

[复制链接]

3

主题

5

回帖

14

积分

新手上路

积分
14
发表于 2020-5-25 16:21:37 | 显示全部楼层 |阅读模式
各位大佬好,我用了硬汉之前库函数版(不是hal库版本)控制ad7606实现fifo工作模式下200khz采集,在200khz采集下结果有问题,八通道一直输出同一个值,不会进行更新。但改为50khz输出就没有问题了,会一直更新。个人猜测好像是200khz时中断处理AD7606_ReadNowAdc还没执行完,就进行下一次中断,导致数据没更新,请问怎样解决这个问题呢?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107815
QQ
发表于 2020-5-25 16:24:45 | 显示全部楼层
已经发布AD7606的FMC DMA双缓冲方案,可以及时处理,参考学习即可,任何F4,H7系列都可以移植。
V6板子第36章节。

【安富莱】V6,V5开发板用户手册,重在BSP驱动包设计方法,HAL库的框架学习,授人以渔,更新至36章(2020-05-25)
http://www.armbbs.cn/forum.php?mod=viewthread&tid=93255

如果你不熟悉HAL的话,那个现有的标准库版本也可以的简单处理下。

200Ksps的采样率下,不建议使用AD7606_ReadNowAdc读取了,容易读取不及时,很快缓冲就慢了,推荐你直接定义两个大的缓冲区,一个缓冲区存数据,另一个用户处理,等满了,再切换下,继续如此操作,实现个简单的双缓冲。





回复

使用道具 举报

3

主题

5

回帖

14

积分

新手上路

积分
14
 楼主| 发表于 2020-5-25 16:29:56 | 显示全部楼层
eric2013 发表于 2020-5-25 16:24
已经发布AD7606的FMC DMA双缓冲方案,可以及时处理,参考学习即可,任何F4,H7系列都可以移植。
V6板子第3 ...

谢谢硬汉,请问v5版的AD7606的FMC DMA双缓冲方案例程出来了没?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107815
QQ
发表于 2020-5-25 16:31:43 | 显示全部楼层
jie0768 发表于 2020-5-25 16:29
谢谢硬汉,请问v5版的AD7606的FMC DMA双缓冲方案例程出来了没?

V5的AD7606插座做不了,需要飞线,太麻烦,不做配套了。此贴进行了说明,需要你项目中修改触发时钟采用TIM1或者TIM8的PWM输出才行。

这么多年了,才发现STM32F4系列使用DMA1的大坑,只有DMA2才是完全体
http://www.armbbs.cn/forum.php?mod=viewthread&tid=97900
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2020-8-22 12:42:04 | 显示全部楼层
您好,我也在做7606FIFO模式,遇到跟你一样数据不变的问题,请问您解决了吗
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107815
QQ
发表于 2020-8-22 16:05:56 | 显示全部楼层
测不准原理 发表于 2020-8-22 12:42
您好,我也在做7606FIFO模式,遇到跟你一样数据不变的问题,请问您解决了吗

用我们的程序搞,注意5V供电和你使用FSMC引脚配置,如果使用的FSMC引脚不一样要做专门配置
回复

使用道具 举报

1

主题

28

回帖

31

积分

新手上路

积分
31
发表于 2020-9-6 09:57:56 | 显示全部楼层
你好,请问问题解决了吗?我现在也在做这个,调试有问题,想咨询一下!
回复

使用道具 举报

1

主题

28

回帖

31

积分

新手上路

积分
31
发表于 2020-9-6 09:58:23 | 显示全部楼层
测不准原理 发表于 2020-8-22 12:42
您好,我也在做7606FIFO模式,遇到跟你一样数据不变的问题,请问您解决了吗

你好,请问问题解决了吗?我现在也在做这个,调试有问题,想咨询一下,感谢!
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107815
QQ
发表于 2020-9-6 10:20:33 | 显示全部楼层
cryfcr 发表于 2020-9-6 09:58
你好,请问问题解决了吗?我现在也在做这个,调试有问题,想咨询一下,感谢!

如果有我们的板子的话,测试方便些。
没有的话,注意5V供电和你使用FSMC引脚配置,如果使用的FSMC引脚不一样要做专门配置。

然后就是二楼的说明,其它没有要注意的了
回复

使用道具 举报

1

主题

28

回帖

31

积分

新手上路

积分
31
发表于 2020-9-6 10:35:35 | 显示全部楼层
eric2013 发表于 2020-9-6 10:20
如果有我们的板子的话,测试方便些。
没有的话,注意5V供电和你使用FSMC引脚配置,如果使用的FSMC引脚不 ...

硬汉哥,我是按照V6HAL教程来的,就是直接移植的咱家的代码,用的野火429V2的板子,因为做测试,AD7606 的CS引脚直接接GND,其中2个通道用的信号发生器生成固定的波形,现在我用JSCOPE查看波形,信号发生器发出500HZ以内的波形都正常显示,超过500HZ,JSCOPE看到的波形就失真太严重了,程序里用 g_tAD7606.ucOS = 1; AD7606_StartRecord(100000); 其实我想做的很简单,就是实现8路ADC同时10K的采集频率,然后将数据最好能够,实时发送到上位机
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107815
QQ
发表于 2020-9-6 10:47:01 | 显示全部楼层
cryfcr 发表于 2020-9-6 10:35
硬汉哥,我是按照V6HAL教程来的,就是直接移植的咱家的代码,用的野火429V2的板子,因为做测试,AD7606  ...

500Hz都不正常的话,没有移植好。特别是你杜邦线飞线的话,要特别注意。

其它问题自己再找找看,可以考虑示波器接上,看看几路FMC控制信号是否已经畸形了。

如果有V5,V6或者V7板子的话,测试比较简单。直接就能用。
回复

使用道具 举报

1

主题

28

回帖

31

积分

新手上路

积分
31
发表于 2020-9-6 10:51:05 | 显示全部楼层
eric2013 发表于 2020-9-6 10:47
500Hz都不正常的话,没有移植好。特别是你杜邦线飞线的话,要特别注意。

其它问题自己再找找看,可以 ...

准备明天上班去让公司买个V6板,回头再用咱程序直接测试下,另外问一下硬汉哥,JSCOPE需要用哪种下载器,我这边的下载器,使用软件查看波形,软件界面右下角,最大只有24K多
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107815
QQ
发表于 2020-9-7 03:23:31 | 显示全部楼层
cryfcr 发表于 2020-9-6 10:51
准备明天上班去让公司买个V6板,回头再用咱程序直接测试下,另外问一下硬汉哥,JSCOPE需要用哪种下载器, ...

整个好使点的JLINK。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-6-14 15:41 , Processed in 0.186717 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表