ADC基本原理-stm32mini

目录

ADC(模数转化)简介

STM32F10x ADC特点

ADC与引脚对应关系

 ADC框图 (部分)​

STM32通道组

 单次转换模式

连续转换模式

扫描模式

ADC中断

ADC用到的部分寄存器


ADC(模数转化)简介

Analog-to-Digital Converter的缩写。指模/数转换器或者模拟/数字转换器。是指将连续变量的模拟信号转换为离散的数字信号的器件。
典型的模拟数字转换器将模拟信号转换为表示一定比例电压值的数字信号。

STM32F10x ADC特点


12位逐次逼近型的模拟数字转换器。
最多带3个ADC控制器   通过模拟开关每个控制器可以连接到多个通道
最多支持18个通道,可最多测量16个外部和2个内部信号源。支持单次和连续转换模式
转换结束,注入转换结束,和发生模拟看门狗事件时产生中断。通道0到通道n的自动扫描模式
自动校准
采样间隔可以按通道编程
规则通道和注入通道均有外部触发选项
转换结果支持左对齐或右对齐方式存储在16位数据寄存器

ADC转换时间:最大转换速率1us。(最大转换速度为1MHz,在ADCCLK=14M,采样周期为1.5个ADC时钟下得到。)
ADC供电要求:2.4V-3.6V
ADC输入范围:VREF<=Vin <= VREr+

ADC与引脚对应关系

ADC基本原理-stm32mini_第1张图片

 ADC基本原理-stm32mini_第2张图片

 ADC框图 (部分)ADC基本原理-stm32mini_第3张图片

 进入ADC通道→进入注入通道或规则通道 

STM32通道组


①规则通道组:相当正常运行的程序。最多16个通道。规则通道和它的转换顺序在ADC_SQRx寄存器中选择,规则组转换的总数应写入ADC_SQR1寄存器的L[3:0]中
②注入通道组:相当于中断。最多4个通道。
注入组和它的转换顺序在ADC_JSQR寄存器中选择。注入组里转化的总数应写入ADC_JSQR寄存器的L[1:0]中。

 单次转换模式

单次转换模式下,ADC只执行一次转换。该模式既可通过设置ADC_CR2寄存器的ADON位(只 适用于规则通道)启动也可通过外部触发启动(适用于规则通道或注入通道),这时CONT位为0。 一旦选择通道的转换完成: ● 如果一个规则通道被转换: ─ 转换数据被储存在16位ADC_DR寄存器中 ─ EOC(转换结束)标志被设置 ─ 如果设置了EOCIE,则产生中断。 ● 如果一个注入通道被转换: ─ 转换数据被储存在16位的ADC_DRJ1寄存器中 ─ JEOC(注入转换结束)标志被设置 ─ 如果设置了JEOCIE位,则产生中断。

连续转换模式

在连续转换模式中,当前面ADC转换一结束马上就启动另一次转换。此模式可通过外部触发启 动或通过设置ADC_CR2寄存器上的ADON位启动,此时CONT位是1。 每个转换后: ● 如果一个规则通道被转换: ─ 转换数据被储存在16位的ADC_DR寄存器中 ─ EOC(转换结束)标志被设置 ─ 如果设置了EOCIE,则产生中断。 ● 如果一个注入通道被转换: ─ 转换数据被储存在16位的ADC_DRJ1寄存器中 ─ JEOC(注入转换结束)标志被设置 ─ 如果设置了JEOCIE位,则产生中断。

扫描模式

此模式用来扫描一组模拟通道。 扫描模式可通过设置ADC_CR1寄存器的SCAN位来选择。一旦这个位被设置,ADC扫描所有被 ADC_SQRX寄存器(对规则通道)或ADC_JSQR(对注入通道)选中的所有通道。在每个组的每个 通道上执行单次转换。在每个转换结束时,同一组的下一个通道被自动转换。如果设置了CONT 位,转换不会在选择组的最后一个通道上停止,而是再次从选择组的第一个通道继续转换。 如果设置了DMA位,在每次EOC后,DMA控制器把规则组通道的转换数据传输到SRAM中。而 注入通道转换的数据总是存储在ADC_JDRx寄存器中。

ADC中断

规则和注入组转换结束时能产生中断,当模拟看门狗状态位被设置时也能产生中断。它们都有 独立的中断使能位。 注: ADC1和ADC2的中断映射在同一个中断向量上,而ADC3的中断有自己的中断向量。 ADC_SR寄存器中有2个其他标志,但是它们没有相关联的中断: ● JSTRT(注入组通道转换的启动) ● STRT(规则组通道转换的启动)ADC基本原理-stm32mini_第4张图片

ADC用到的部分寄存器

ADC控制寄存器 1(ADC_CR1)  扫描模式选择  中断使能

ADC控制寄存器 2(ADC_CR2)  是否连续转化  数据对齐方式  开启AD转化

ADC采样时间寄存器 1(ADC_SMPR1)

ADC采样时间寄存器 2(ADC_SMPR2)  最小转化时间为1us  ADC时钟=14MHz 

ADC注入通道数据偏移寄存器x (ADC_JOFRx)(x=1..4)

ADC规则序列寄存器 1(ADC_SQR1/SQR2/SQR3)  选择转化通道

ADC注入序列寄存器(ADC_JSQR)    选择数据存放范围

ADC规则数据寄存器(ADC_DR)

你可能感兴趣的:(stm32)