请教 STM32的ADC工作模式

查看数: 20152 | 评论数: 59 | 收藏 5
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2010-5-3 10:47

正文摘要:

STM32的ADC工作模式有: 单次, 连续, 扫描, 疑问如下: 1.单次模式转换的通道是由ADC_SQR指定的吗? 第一次和第二次单次转换的通道是按照ADC_SQR序列步进, 还是一只就是ADC_SQR中的第一通道? 如果是步进方式, 连续触 ...

回复

电子乌托邦 发表于 2015-7-18 23:06
mark

使用特权

评论回复
heiselpy 发表于 2015-6-11 22:00
此帖很好,需要留念一下

使用特权

评论回复
tianhaolan 发表于 2014-12-8 15:24
学习了,是不是用多通道的话必须得用DMA啊?规则通道多通道转换的时候,如果每转换完一个通道就置位一下EOC,我们是不是也可以用中断的方式来读每个通道的数值?

使用特权

评论回复
香水城 发表于 2014-9-9 13:06
zhangyu198530 发表于 2014-9-3 10:10
我现在有个问题想请教香版主。使用ADC1,Regular通道的顺序为Ch0,Ch1,Ch2,Ch3,启动Scan模式,并启动DMA ...

我觉得应该是一个通道转换完成了就会触发对应的DMA传输。

F1的手册上说:

Since converted regular channels value are stored in a unique data register, it is necessary
to use DMA for conversion of more than one regular channel. This avoids the loss of data
already stored in the ADC_DR register.
Only the end of conversion of a regular channel generates a DMA request, which allows the
transfer of its converted data from the ADC_DR register to the destination location selected
by the user.

使用特权

评论回复
zhangyu198530 发表于 2014-9-3 10:10
香水城 发表于 2014-7-23 09:54
因果关系要搞清楚:ADC转换产生转换值了,才会触发DMA的传输请求;前者是因,后者是果。

因此,扫描不连 ...

我现在有个问题想请教香版主。使用ADC1,Regular通道的顺序为Ch0,Ch1,Ch2,Ch3,启动Scan模式,并启动DMA模式。那我的AD是采集完每个通道都会触发DMA还是整个序列转化完成后才触发DMA呢。

使用特权

评论回复
heiselpy 发表于 2014-7-23 14:10
香水城 发表于 2014-7-23 09:54
因果关系要搞清楚:ADC转换产生转换值了,才会触发DMA的传输请求;前者是因,后者是果。

因此,扫描不连 ...

昨天我自己也发现自己昏了头了,吧DMA和ADC混为一谈了

使用特权

评论回复
沉默胜过白金 发表于 2014-7-23 10:08
mark!!!

使用特权

评论回复
香水城 发表于 2014-7-23 09:54
heiselpy 发表于 2014-7-22 20:10
请问如果是扫描不连续模式,转换完一个规则序列后,但是DMA_CHx->CNDTR即设定的传输数量还未减到零,也是 ...

因果关系要搞清楚:ADC转换产生转换值了,才会触发DMA的传输请求;前者是因,后者是果。

因此,扫描不连续模式下,一个组扫描采样完成了,ADC就停止工作了。当然不会再产生触发DMA传输的请求了,无论此时DMA此时的CNDTR是否为0咯

使用特权

评论回复
heiselpy 发表于 2014-7-22 20:10
香水城 发表于 2010-5-5 14:11
下面是手册中关于SCAN模式的描述,SCAN模式的特征就是“在每个组的每个通道上执行单次转换,在每个转换结束 ...

请问如果是扫描不连续模式,转换完一个规则序列后,但是DMA_CHx->CNDTR即设定的传输数量还未减到零,也是转换完序列中最后一个通道就不再转换了吗?谢谢~!

使用特权

评论回复
idqiye 发表于 2014-5-29 20:46
香水城 发表于 2010-5-5 21:58
其实我觉得这里还是理解方式的问题。

我认为手册写得很清楚,所以在有疑问时,对于手册没有说的东西,会理 ...

有问题,和解决问题的人没有必要纠结这个,版主也确实解决问题了,楼主其实也不能说理解能力问题,有时候我们在学习的过程中总是遇到这样或那样的问题,无可厚非。大家共同进步,足以,没必要都太较真......这大热天的,大家都躁动了

使用特权

评论回复
1085674553 发表于 2014-5-29 10:41
顶20楼

使用特权

评论回复
1085674553 发表于 2014-5-29 10:40
版主讲的很清楚

使用特权

评论回复
profitt 发表于 2014-1-6 10:20
学习了,自己理解能力差,只看手册确实没搞明白,

使用特权

评论回复
trumpxp 发表于 2013-10-16 20:26
这一块  我也不是很懂   需要向楼主请教   先顶一个

使用特权

评论回复
riptell 发表于 2013-10-16 16:10
good!学习了!!

使用特权

评论回复
zhj1011 发表于 2013-10-16 15:22
版主解释的很透彻,学习了!

使用特权

评论回复
ilikerome 发表于 2013-8-1 23:19
本帖最后由 ilikerome 于 2013-8-1 23:22 编辑
香水城 发表于 2010-5-5 21:58
其实我觉得这里还是理解方式的问题。

我认为手册写得很清楚,所以在有疑问时,对于手册没有说的东西,会理 ...

不要别人一问你问题,就是一口咬定、先声明、或者无时无刻的强调你们的东西没有问题,st的手册就是很晦涩,毋容置疑的,如果一个人问就算了,大家都在问那就是你们自己的问题,所以才需要你们fae来支持,这才是你们的职责,而不是到处说自己没问题,平时就够烦的了,还要满pdf里面抠字眼,这是在浪费大家的时间。又不是说不用你们东西,或者故意来说你们的东西差,这些苦逼的工程师只是想尽快把东西搞定。

使用特权

评论回复
qqatscau 发表于 2012-11-9 22:03
MARK

使用特权

评论回复
wx865220862 发表于 2012-11-8 12:20
看了你们的讨论,基本清楚了ADC的几种conversion mode。多谢了~

使用特权

评论回复
outstanding 发表于 2012-9-20 15:23
看看。。。。。。。。。。。。。。

使用特权

评论回复