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、扫描模式

相关推荐
艾莉丝努力练剑16 小时前
【AI接入大模型SDK】ChatSDK示例验证
人工智能·学习·面试·大模型·sdk
葡萄成熟时 !21 小时前
JAVA 常用API学习笔记
java·笔记·学习
捷瑞电子工坊21 小时前
FreeRTOS任务管理:从入门到实践(标准库版)
stm32·嵌入式·freertos·实时操作系统·任务管理·标准外设库·任务挂起与恢复
别动我齐刘海1 天前
机器人运动控制学习2——基础进阶
c++·人工智能·神经网络·学习·目标检测·机器学习·机器人
0566461 天前
agent学习——流式响应与文本切分
网络·python·学习
for_ever_love__1 天前
python基础语法学习: 面向对象的三大特性
开发语言·python·学习
恒锐丰科技韩生1 天前
SS8844T|8.2‑40V 四通道独立半桥驱动 ETSSOP28 带散热焊盘 工业自动化机器人专用
嵌入式硬件·硬件工程
Hello_Damon_Nikola1 天前
INMP441从入门到精通
单片机·嵌入式硬件·物联网
恒锐丰小瑞1 天前
率能SS6810H 32V/1A/双通道H桥驱动芯片,PWM电流控制与混合衰减模式,用于POS打印机/安防相机/机器人
嵌入式硬件·数码相机·机器人·硬件工程
恒锐丰科技林技术员1 天前
SS8812T 双通道 H 桥电机驱动芯片应用解析
经验分享·嵌入式硬件·硬件工程