STM32F103 一:ADC

  • 前言
    • 总结
    • 数据采集系统
    • A/D转换原理
    • A/D转换器的主要参数
    • STM32 ADC的一些配置
    • 扫描模式
    • 规则组注入组
      • 转换模式
      • ADC 寄存器
      • ADC实验

前言

将模拟量转换为数字量的过程称为模数(A/D)转换,完成这一转换的器件叫模数转换器(ADC),将数字量转换为模量的过程叫数模(D/A)转换,完成这一转换的器件成为数模转换器(DAC)。
可以去看看刘凯老师的课:https://www.bilibili.com/video/BV1at411K74k/?p=52&spm_id_from=pageDriver&vd_source=9385b7f8c739b9e3ef3f21ddaebd2eb9

总结

  1. STM32的ADC通常最大精度是12位,使用时也可以配置成10位、8位或6位等。精度会影响转换速度和数据计算。
  2. STM32中ADC的时钟通常由PCLK2(ABP2外设时钟)分频得来,在 STM32F405RG 中最大可以达到36MHz。
  3. ADC每处理一次数据分为 采样 和 转换 两个过程。 采样时间可以配置,比如 STM32F405RG 中最小为3个ADC时钟周期;转换时间和精度有关,12位精度下为12个ADC时钟周期、10位精度下为10个ADC时钟周期,依此类推。**每采样一个数据所需的时间为 (采样周期 + 转换周期) / ADC时钟频率。**比如当ADC时钟频率为30MHz,采样周期选最小值3,精度为12位时,每处理一次数据耗时为 (3+12)/30/1000000 (秒) = 0.5微秒
  4. 引脚数量大于等于100的封装上通常会有 VREF 引脚,ADC可转换的电压不大于 VREF 上的电压;引脚数量小于100的封装其 VREF 直接就是在芯片内部连接到 VDDA 的。
  5. ADC工作最后得到的数据换算成真实电压的时候主要和 VREF 以及精度有关。比如12位精度下 真实电压 = 数据 * VREF / (4096 - 1) ,10位精度下 真实电压 = 数据 * VREF / (1024 - 1) ,依此类推。ADC因为工作原理关系本身有1个分辨率的误差;单片机在除以4096、1024等这些数值的时候可以用右移的方式提高效率。所以通常可以不要 -1 ,即12位精度下 真实电压 = 数据 * VREF / 4096
  6. STM32芯片VDD、VDDA和VREF的关系
    所以VDDA必须和VDD连接,因为系统VDD电压一般是3.3V,所以导致ADC的VREF参考电压只能是3.3V。
  7. HAL库对很多外设的使用设计了 轮询 、中断 、DMA 三种方式。STM32的ADC采样转换有 单次 / 连续 转换模式 。另外每个ADC每次处理时只能处理一个通道,所以多通道时还涉及 扫描 模式 。
  8. STM32的ADC还有规则转换(Regular)和注入转换(Injected),注入就相当于在正常规则转换过程中插入中断,优先进行注入转换
  9. stm32 ADC的使用
    HAL库ADC的使用
    https://blog.csdn.net/Naisu_kun/article/details/121532288
    固件库ADC使用
    https://blog.csdn.net/weixin_43002939/article/details/124447899

数据采集系统

数据采集系统由模拟信号采集,ADC,数字信号处理三大部分组成。

AD上传感器器转换后的信息一般为电压,电阻等电学量。

A/D转换原理

A/D转换包含采样保持和量化编码两个内容。一般AD转换的时间在us级别。
采样后得到的样点幅值转换为数字量,即为量化,编码的过程。

A/D转换器的主要参数

STM32的分辨率一般是12位

STM32 ADC的一些配置


规则组做常规,注入组做特别检测
ADC时钟(转换速率),支持ADC的GPIO引脚,中断,看门狗(监测外部量的变化而触发中断),触发器(采集频率)

扫描模式

规则组注入组

转换启动,数据寄存器

转换模式




DMA可以将数据转到SRAM里面。

ADC 寄存器


ADC实验

HAL库ADC的使用
https://blog.csdn.net/Naisu_kun/article/details/121532288
固件库ADC使用
https://blog.csdn.net/weixin_43002939/article/details/124447899

STM32F103(一):ADC相关推荐

  1. STM32F103单片机ADC功能使用

      stm32f103系列单片机内部ADC为12位ADC. 12位ADC是一种逐次逼近型模拟数字转换器.它有多达18个通道,可测量16个外部和2个内部 信号源.各通道的A/D转换可以单次.连续.扫描或 ...

  2. STM32F103三路ADC同步转换带有DMA功能

    //保证ADC检测出来的值是稳定 #include "adc.h" _detection sampling; _detection display; /ADC,DMA模式/ /PC ...

  3. STM32开发(14)----CubeMX配置ADC

    CubeMX配置ADC 前言 一.什么是ADC? 二.实验过程 1.单通道ADC采集 STM32CubeMX配置 代码实现 2.多通道ADC采样(非DMA) STM32CubeMX配置 代码实现 3. ...

  4. STM32之ADC的理解及运用

    文章目录 前言 一.ADC的输入通道与模式 1.输入通道 2.模式 1)独立模式单通道采集 2)独立模式多通道采集 3)双重ADC模式采集 二.ADC的触发方式 三.编程要点 四.资源连接 前言 AD ...

  5. STM32CUBEIDE(10)----ADC在DMA模式下扫描多个通道

    STM32CUBEIDE.10----ADC在DMA模式下扫描多个通道 概述 样品申请 视频教学 csdn课程 代码下载 生成例程 STM32CUBEIDE配置 串口重定向 代码 测试结果 概述 本章 ...

  6. 【正点原子STM32连载】第六十六章 综合测试实验摘自【正点原子】STM32F103 战舰开发指南V1.2

    1)实验平台:正点原子stm32f103战舰开发板V4 2)平台购买地址:https://detail.tmall.com/item.htm?id=609294757420 3)全套实验源码+手册+视 ...

  7. 嵌入式系统原理及应用课后习题答案

    嵌入式系统原理及应用-基于ARM Cortex-M3内核的STM32F103系列微控制器 第1篇 系统篇 第1章嵌入式系统概述 第2章嵌入式系统开发 第2篇 内核篇 第3章ARMCortex-M3处理 ...

  8. 线性霍尔传感器——霍尔摇杆

    线性霍尔传感器--自制霍尔摇杆 1. 线性霍尔传感器实验 霍尔传感器型号:AH3503 stm32f103的ADC信号采集 原始读取范围0 - 4096,对应电压值:0 - 3.3 V 磁铁:直径:8 ...

  9. 正点原子STM32(基于HAL库)4

    目录 ADC 实验 ADC 简介 单通道ADC 采集实验 ADC 寄存器 硬件设计 程序设计 下载验证 单通道ADC 采集(DMA 读取)实验 ADC & DMA 寄存器 硬件设计 程序设计 ...

  10. GP2Y1014AU传感器

    引脚图 2号引脚LED_GND是模块内部的LED灯的GND 5号引脚Vo接入STM32F103的ADC采集引脚,传感器输出的是一个模拟电压,该电压正比于所测得的粉尘浓度. 3号引脚LED接入DAC输出 ...

最新文章

  1. TensorFlow Keras API用法
  2. 新加坡南洋理工 计算机排名6,别踩坑了!这些才是新加坡最好的专业!
  3. elasticsearch完全匹配
  4. 深入理解java虚拟机 (三) 第二版
  5. SSE图像算法优化系列二十二:优化龚元浩博士的曲率滤波算法,达到约1000 MPixels/Sec的单次迭代速度...
  6. Developer 转型记:一个开发平台的“魔力”
  7. Linux下 fio磁盘压测笔记
  8. idea 文件只读不可编辑--解决方法
  9. Chapter 4 Invitations——10
  10. 181009词霸有道扇贝每日一句
  11. viewHolder的作用
  12. python爬虫--下载酷我音乐
  13. 西门子SITOP电源维修6EP1336-3BA00冗余电源模块维修概述
  14. 软件测试工程师笔试题带答案(一)
  15. AEC 声学回声消除
  16. 领带的打法10种——男士必看(图)
  17. Kafka配置SASL_SSL认证传输加密
  18. 常用桌面端软件开发语言整理
  19. java安装了为什么运行不了_如何安装java(安装了java为什么不能使用)
  20. Mentor PADS铺铜指示器的关闭操作

热门文章

  1. python批量循环图片识别_批量识别图中文字自动命名,让你1秒找到骚图
  2. 我的世界服务器物品无法合成,《我的世界》MC玩家无法合成的五大物品,最后一个已经被移除了!...
  3. 欧盟委员会开源计划办公室启动漏洞赏金
  4. 微众银行在联邦推荐算法上的探索及应用
  5. Newtonsoft.Json取json字符串中的值得用法
  6. 电脑系统管理员权限怎么设置为超级管理员权限
  7. ORACLE集群管理-核心资源分析-MDNS
  8. 从三个方面说明0是无穷小
  9. 从管理看:华为如何应对全球化带来的挑战?
  10. RCTF-2015 TankGame