OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5848|回复: 9

ADC芯片信号采集频繁进入外部中断问题

[复制链接]

97

主题

140

帖子

0

精华

高级会员

Rank: 4

积分
657
金钱
657
注册时间
2020-5-17
在线时间
178 小时
发表于 2022-5-4 14:32:29 | 显示全部楼层 |阅读模式
1金钱
当AD7767 DRDY(数据就绪)引脚输出低电平时读数据,我用外部中断去检测该引脚,在中断里触发DMA读取数据,但把ADC采样率设置到高速时,DRDY(数据就绪)引脚输出低电平速度变快,就会频繁触发外部中断,导致CPU没办法正常运行其他任务。求教各位,有没有更好的方法。我用的是STM32F767IGT6


最佳答案

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2022-5-4 14:32:30 | 显示全部楼层
fanxs95 发表于 2022-5-27 14:20
我是用这个ADC芯片来采集信号,然后对信号进行解调

TIM+DMA+GPIO读取试试
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2022-5-4 22:45:37 | 显示全部楼层
用定时器触发,不要用中断。比如DRDY接到定时器某个通道输入脚,然后设置定时器外部触发模式,来触发DMA动作,全程CPU无需参与。只要等DMA传输完成中断,一次性处理数据即可。
回复

使用道具 举报

97

主题

140

帖子

0

精华

高级会员

Rank: 4

积分
657
金钱
657
注册时间
2020-5-17
在线时间
178 小时
 楼主| 发表于 2022-5-5 09:59:55 | 显示全部楼层
正点原子 发表于 2022-5-4 22:45
用定时器触发,不要用中断。比如DRDY接到定时器某个通道输入脚,然后设置定时器外部触发模式,来触发DMA动 ...

所以用外部中断的方法,是行不通的咯
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2022-5-5 23:56:10 | 显示全部楼层
fanxs95 发表于 2022-5-5 09:59
所以用外部中断的方法,是行不通的咯

速度快的时候,行不通
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

97

主题

140

帖子

0

精华

高级会员

Rank: 4

积分
657
金钱
657
注册时间
2020-5-17
在线时间
178 小时
 楼主| 发表于 2022-5-6 14:19:48 | 显示全部楼层
正点原子 发表于 2022-5-5 23:56
速度快的时候,行不通

进入外部中断的频率,在30k-60k
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2022-5-7 00:18:18 | 显示全部楼层
fanxs95 发表于 2022-5-6 14:19
进入外部中断的频率,在30k-60k

算是比较高了,如果你中断处理内容比较多,就可能出现丢数据的情况
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

97

主题

140

帖子

0

精华

高级会员

Rank: 4

积分
657
金钱
657
注册时间
2020-5-17
在线时间
178 小时
 楼主| 发表于 2022-5-9 16:12:10 | 显示全部楼层
正点原子 发表于 2022-5-7 00:18
算是比较高了,如果你中断处理内容比较多,就可能出现丢数据的情况

论坛内有没有类似的例程,可以参考一下啊
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2022-5-10 00:01:29 | 显示全部楼层
fanxs95 发表于 2022-5-9 16:12
论坛内有没有类似的例程,可以参考一下啊

可以参考下ADC+DMA数据采集,类似的例子,不过你这个是外置ADC,别人一般是内置ADC
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

97

主题

140

帖子

0

精华

高级会员

Rank: 4

积分
657
金钱
657
注册时间
2020-5-17
在线时间
178 小时
 楼主| 发表于 2022-5-27 14:20:32 | 显示全部楼层
正点原子 发表于 2022-5-10 00:01
可以参考下ADC+DMA数据采集,类似的例子,不过你这个是外置ADC,别人一般是内置ADC

我是用这个ADC芯片来采集信号,然后对信号进行解调
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-25 18:21

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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