stm32F407学习DAY.27 ADC

一、基本原理

1、并联比较型

精度低,功耗大

转换速度快

2、逐次逼近型

功耗低,结构简单

速度慢

二、特性参数

1、分辨率

ADC能辨别的最小模拟量,以二进制位数表示,如8、10、12、16

假设AD是12位,测量3.3V的电压,可分辨3.3/4096≈0.0008V

2、转换时间

完成一次AD转换所需要的时间,时间越短,采样率越高

1s内,假设转换时间为200ms,可转换5次;转换时间100ms,可转换10次

3、精度

最小刻度基础上,叠加误差影响的参数(受ADC性能、温度、气压等影响)

4、量化误差

用数字量近似表示模拟量,会出现无法完全覆盖的情况,四舍五入后,与实际值的差就是量化误差

三、STM32F1/4的ADC特点

四、框图(以F4为例)与工作原理

1、参考电压/模拟部分电压

1)框图

2)原理

2、通道

1)框图

外部:16个通道,通过GPIO复用

内部:3个,温度传感器、参考电压、电池电压(F1只有2个,无VBAT)

2)原理

3、转换序列

1)框图

利用注入通道和规则通道进行分组

2)原理

注入组可以打断规则组的转换

3个规则序列寄存器:SQR1 2 3

注入通道寄存器:1个 JSQR

假设转化2个通道,JL设定成1(∵取值0-3代表1-4个通道),x=4-1=3,则注入序列的转换顺序是从JSQ3开始的;假设第一个要转换的通道是15,第二个要转换的通道是10,将15写入JSQ3,10写入JSQ4

快速记忆:转换n个,就从寄存器4-n+1开始转换

4、触发源

1)框图

分为注入组和规则组,常用规则组

先将EXTEN控制使能位置1,再通过EXTSEL选择触发源

2)原理

触发转换方式:

a.ADON位触发转换(仅限F1,少用)

当ADC_CR2寄存器的ADON位=1,在单独给ADON位写1,会触发规则组转换

b.外部事件触发转换:规则组、触发组

F1:

F4:

5、转换时间

1)框图

2)原理

设置ADC时钟

F1:ADC挂载在APB2上 APB2时钟最大为主频的1/2

ADC转换时间:Tconv=采样时间+12.5个周期(F4为+12个周期)

(F4)

采样时间通过SMPRx寄存器设置

6、数据寄存器

1)框图

规则组只有一个16位数据寄存器,可通过DMA将数据存入SRAM中

注入组有4个16位数据寄存器

2)原理

F1:

∵对F1来说,ADC为12位,寄存器有16个位,需要利用ADCx_CR2寄存器的ALIGN,位选择左对齐、右对齐,一般选右对齐

F4:

7、中断

1)框图

数据存入内存后,产生转换结束标志位,若开启中断使能位(将某中断位置1),就会产生ADC中断

2)原理

若使能控制位,会产生中断到NVIC

DMA请求只适用于规则组

8、单次转换模式和连续转换模式

通过CONT位设置

9、扫描模式

相关推荐
外收内放3 小时前
面向对象高级(实战案例)
开发语言·python·学习
薛定e的猫咪4 小时前
(ICLR 2020)MAML 靠的不是快速学习,而是特征复用
人工智能·深度学习·学习·算法·机器学习
HQB20264 小时前
EG1198|屹晶微电子 120V 内置 MOS 异步降压 DC‑DC(高性价比)
嵌入式硬件·硬件工程
薛定e的猫咪5 小时前
(ICLR 2026)DF-META:面向 FJSP 的无导数元学习实例自适应调度
人工智能·深度学习·学习·算法·机器学习
果壳science6 小时前
张祥前实验如何获取正电荷
笔记·科技·嵌入式硬件·硬件工程·制造
沉淀的.晴天7 小时前
can总线
stm32
桀人7 小时前
认识AT24C02
stm32·单片机·嵌入式硬件
别动我齐刘海8 小时前
机器人 C++ / 系统联调补强2——异常处理、Protobuf
linux·c++·人工智能·学习·算法·机器学习·机器人
国科安芯8 小时前
星间激光通信终端CANFD控制网络的时延确定性与辐射可靠性
网络·嵌入式硬件·信息与通信·canfd·低轨卫星·商业航天·抗辐射
一直C8 小时前
嵌入式 Linux 驱动开发学习笔记:内核定时器、platform 总线与 I²C 驱动
linux·驱动开发·嵌入式硬件·学习·imx6ull