野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10443|回复: 4

2通道ADC+DMA

[复制链接]
发表于 2016-3-4 16:27:14 | 显示全部楼层 |阅读模式
刚接触STM32,请教下相关ADC+DMA定时采集问题:2个通道连续采集加DMA循环传送。ADC1时钟9M,两个通道采样时间均为55.5个周期,那么问题来了:1、ADC1总的采集时间是两个通道时间的总和吗?(55.5+12.5)/9*2???

2、ADC1采集完的标志是什么时候出现的?通道1采集完还是通道2采集完?连续采集的话,完成标志会自动清吗?
3、在取DMA对应的数据时需不需要判断DMA传送完成标志?取数据比较多的时候不关闭DMA传送,会不会取了一部分数据,另外一部分被更新?


4、我想利用ADC或DMA完成标志来取反IO口电平,用示波器观察时间,不知道该怎么处理?
        while (1)
        {
               
                //if(ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC))
                if(DMA_GetFlagStatus(DMA1_FLAG_TC1))
                {
                        DMA_ClearFlag(DMA1_FLAG_TC1);
                        //GPIO_TOGGLE;
                        GPIO_SetBits(GPIOB,GPIO_Pin_1);                                       
                }                 
                GPIO_ResetBits(GPIOB,GPIO_Pin_1);               
        }



回复

使用道具 举报

发表于 2016-3-5 08:54:15 | 显示全部楼层
每个通道都有自己的标志位,采集完一个通道再采集另一个通道

你要测时间的话,直接用systick来测就好了,再用示波器太麻烦
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-3-6 14:50:02 | 显示全部楼层
flyleaf 发表于 2016-3-5 08:54
每个通道都有自己的标志位,采集完一个通道再采集另一个通道

你要测时间的话,直接用systick来测就好了 ...

那ADC标志位和DMA标志位会自动清不?
回复 支持 反对

使用道具 举报

发表于 2016-3-7 08:59:19 | 显示全部楼层
yigehaorens 发表于 2016-3-6 14:50
那ADC标志位和DMA标志位会自动清不?

STM32很少有标志位会自动清除的,具体看一下手册吧,我记不了那么多
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-3-8 09:27:38 | 显示全部楼层
flyleaf 发表于 2016-3-7 08:59
STM32很少有标志位会自动清除的,具体看一下手册吧,我记不了那么多

好的,谢了
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-15 00:22 , Processed in 0.043785 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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