OpenEdv-开源电子网

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

请教一些stm32 ADC转换的问题

[复制链接]

39

主题

160

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
298
金钱
298
注册时间
2014-1-9
在线时间
8 小时
发表于 2014-3-19 13:40:45 | 显示全部楼层 |阅读模式
今天看了一上午的ADC转换,有点头疼,请教几个问题
1.比如ADC1对1,2,3这3个通道进行转换,采用连续扫描格式,肯定先对1通道进行转换,接着是2,3.那请问3转换完了,是不是再对1转换呢?这样不停地转换呢?
2.DMA_InitStructure.DMA_BufferSize = cndtr。这个是设置DMA的缓存大小,这句话什么意思?他好像和ADC通道的数目是一一对应的,这句是不是说我每搬运3次数据才置位呢?
3.while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));
   while(DMA_GetFlagStatus(DMA1_FLAG_TC1)==RESET);
在main主函数里有这么一句,第一个是等待ADC1的转换结束标志位,那请问在上面要进行3个通道转换的时候,是每完成一次转换就置位呢,还是3次转换才置位呢?
本人看到晕晕乎乎的,找到的例子程序也差不多
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2014-3-19 14:30:47 | 显示全部楼层
1.是的,循环扫描通道转换
2.和ADC的通道没有关系。只是搬运ADC数据寄存器的值到指定的内存。
3while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));这句话应该可以不要的,DMA搬运完成说明ADC的值是采集成功的。ADC每完成一次采样DMA才搬运一次。
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

39

主题

160

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
298
金钱
298
注册时间
2014-1-9
在线时间
8 小时
 楼主| 发表于 2014-3-19 14:56:28 | 显示全部楼层
回复【2楼】xiaoyan:

1.是的,循环扫描通道转换
2.和ADC的通道没有关系。只是搬运ADC数据寄存器的值到指定的内存。
3while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));这句话应该可以不要的,DMA搬运完成说明ADC的值是采集成功的。ADC每完成一次采样DMA才搬运一次。

---------------------------------
谢谢,比如说上面那种情况我要用ADC中断的话,他是每完成一次ADC转换中断呢,还是完成3次ADC转换中断呢
关于DMA中断的设置,DMA_InitStructure.DMA_MemoryBaseAddr = (u32)ADC_Keep;这个表示DMA要传送到地址,这个数组有3个数据,DMA_InitStructure.DMA_BufferSize = 3;这个表示缓存的大小,这样设置也就说每传输3个数据中断一次,但如果DMA_InitStructure.DMA_BufferSize = 1的话,是不是表示每搬运一个数据就触发一次DMA中断呢
回复 支持 反对

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2014-3-19 16:44:01 | 显示全部楼层
1.“比如说上面那种情况我要用ADC中断的话,他是每完成一次ADC转换中断呢,还是完成3次ADC转换中断呢 ”
每完成一次中断。
2.不会,当DMA传输完成才会触发中断,还有其他的中断,具体参考手册。
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2014-3-19 16:45:10 | 显示全部楼层
你问的这些问题,都可以通过写代码来验证的。所以多动手你就理解了哦。
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

39

主题

160

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
298
金钱
298
注册时间
2014-1-9
在线时间
8 小时
 楼主| 发表于 2014-3-20 09:11:41 | 显示全部楼层
回复【4楼】xiaoyan:
---------------------------------
谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-13 16:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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