野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 18311|回复: 7

AD同时测量几路通道?

[复制链接]
发表于 2014-5-25 08:55:06 | 显示全部楼层 |阅读模式
用32的AD同时采样几个通道的电压,但是ADC只有一个数据寄存器,如何实现数据的传输?
回复

使用道具 举报

发表于 2014-5-25 14:04:45 | 显示全部楼层
ADC的多通道是轮流采集的,数据都是存储在数据寄存器,当一个通道采集完成的时候读取一下数据寄存器就是该通道的数据
回复 支持 反对

使用道具 举报

发表于 2014-5-25 14:25:53 | 显示全部楼层
各个通道轮流分时采集,在不同的时间读取数据寄存器就可以了,或者使用DMA,数据会按通道1、通道2、通道3这样的格式存储
回复 支持 反对

使用道具 举报

发表于 2014-5-27 17:42:41 | 显示全部楼层
我也是要采集多路ADC数据,但是我不知道怎么弄DMA,
我现在就是开了2个通道,ADC1—1和ADC1-11但是采集的数据老是一会是1通道一会是11通道的数据,我不知道怎么搞。求解答
回复 支持 反对

使用道具 举报

发表于 2014-5-27 18:40:06 | 显示全部楼层
侯希白 发表于 2014-5-27 17:42
我也是要采集多路ADC数据,但是我不知道怎么弄DMA,
我现在就是开了2个通道,ADC1—1和ADC1-11但是采集的数 ...

数据按chanal 1  channal 2  channal 3 channal4 。。。。channal 1 这样排列的
回复 支持 反对

使用道具 举报

发表于 2014-5-27 19:10:27 | 显示全部楼层
本帖最后由 侯希白 于 2014-5-27 19:12 编辑
吕一瑾 发表于 2014-5-27 18:40
数据按chanal 1  channal 2  channal 3 channal4 。。。。channal 1 这样排列的

在火哥的ADC  DEMO里面 是用的寄存器ADC1_DR_Address,我搞的多路连续采集数据,所以数据老是变,我就不理解。
回复 支持 反对

使用道具 举报

发表于 2014-5-27 19:11:45 | 显示全部楼层
侯希白 发表于 2014-5-27 19:10
在火哥的ADC  DEMO里面 是用的寄存器ADC1_DR_Address,我搞的多路连续采集数据,所以数据老是变

那看看 STM32手册,你弄懂了火哥的例程,现在看那个手册应该能琢磨出来
回复 支持 反对

使用道具 举报

发表于 2014-5-28 18:50:18 | 显示全部楼层
我是直接改ADC的DEMO  
ADC_init1
ADC_INIT2
******
*****
ADC_initN
每一个ADC_init的通道不一样   其他都是一样的
在ADC.H 里面定义ADC_initN
#include "stm32f10x.h"
void ADC1_Init(void);
void ADC_initN(void):
#endif /* __ADC_H */
就是采集每一个通道  以此类推  
特别注意的是 不要   等待校准寄存器复位完成   和/*ADC 等待校准完成*/
不然会死机   具体原因  我也不清楚
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 05:18 , Processed in 0.028576 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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