STM32--ADC模数转换器

一、ADC简介

STM32 的 ADC 是 12 位逐次逼近型 的模拟数字转换器。 它有 18 个通道,可测量 16 个外部和 2 个内部信号源。 各通道的 A/D 转换可以 单次、连续、扫描或间断模式 执行。 ADC 的结果可以 左对齐或右对齐方式 (12位)存储在 16 位数据寄存器中。

二、ADC特点

12位表示ADC的分辨率,大小为0~2^12-1;

1us表示从转换开始到产生结果需要最快的转换时间为1us,对应的AD转换频率为1MHZ;

16个外部信号源就是16个GPIO口,引脚可以直接测电压;

2个内部信号源是内部温度传感器(可测CPU温度)和内部参考电压(1.2V左右的基准电压,不随外部供电电压而变化,可读取基准电压校准外部引脚电压);

三、 ADC功能图

1、逐次逼近型ADC芯片结构框图

                    

2、ADC框图

        

四、ADC基本结构

最左边是18个信号源,进入AD转换器后可以选择16个规则组和4个注入组,转换完成的结果会放在AD数据寄存器,其中规则组有一个,注入组有四个;

触发数据转换的触发控制部分提供了软件触发和硬件触发两种选择;

右边推动ADC逐次比较的时钟CLOCK来自RCC时钟;

上面的模拟看门狗用于监测转换结果的范围,超出阈值就会申请中断;

规则组注入组转换完成会有EOC信号,会置标志位,也可以申请中断。

五、输入通道

六、转换模式

ADC可选择单次转换和连续转换,扫描和非扫描。他们排列组合就会产生四种模式。

1、ADC单通道

单次转换,扫描模式失能:转换一次后停止转换,要想再次启动转换就要再次触发;

连续转换,扫描模式失能:转换一次后继续下一轮转换,只用开始时触发一次即可;

2、ADC多通道

单次转换,扫描模式使能:ADC的多个通道按照配置的顺序依次转换,转换完成后停止转换,要想再次启动转换就要再次触发;

连续转换,扫描模式使能:ADC的多个通道按照配置的顺序依次转换,转换完成后继续下一轮转换,只用开始时触发一次即可;

下一次的刷新会覆盖上一次的值,在扫描模式下可通过DMA转运数据

七、触发控制

 

八、数据对齐

12位ADC转换器转换的结果也是12位的数据,但数据寄存器是16位的。所以就存在数据对齐的问题。

1、数据右对齐

十二位数据向右靠,高位补0;

2、数据左对齐

十二位数据向左靠,低位补0;

九、转换时间

ADC的转换步骤:采样,保持,量化,编码;

Tconv = 采样时间 + 12.5个ADC周期   (采样时间就是采样与保持的时间;12.5个ADC周期就是量化与编码的时间)(ADC周期就是从RCC分频过来的ADCCLK,最大为14MHZ

当ADCCLK=14MHZ,采样时间为1.5个ADC周期时:

Tconv = 1.5 + 12.5 = 14个ADC周期 = 1us

采样时间短速度快,采样时间长避免毛刺干扰

十、校准

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值