【STM32学习】模数转换器——ADC

这篇具有很好参考价值的文章主要介绍了【STM32学习】模数转换器——ADC。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

零、参考

[STM32固件库(标准外设库)入门学习 第七章 ADC数模转换(一)
刘凯:STM32F103(一):ADC

通过上述的两个链接以及stm32的参考手册,应该可以把ADC理解的差不多了,接下来说一下自己对某些内容的理解。

adc转换时间,【STM32重学】,stm32,ADC

一、ADC转换耗时

STM32 ADC转换速度与精度

对于AD转换所需要的时间,我们经常看到:Tconv = Sampling time + 12.5 cycles
总时间=采集时间+转换时间
采样时间是我们根据ADC_SMPR寄存器设置的,采样时间越长,精度越高
后面的12.5个ADC周期,表示转换时间,即由采集到的信息到转换出数据的时间。查询资料说是固定的。

二、转换模式

ADC有规则组和注入组,又有扫描、单次、连续、单多通道,很多很复杂,就做了如下表格,也进行了实验验证。

adc转换时间,【STM32重学】,stm32,ADC

绿色表示可以使用该模式;
红色表示该模式无法正确转换出想要的结果;
蓝色表示使用该模式无意义;

规则组与注入组的区别,不在描述;简单的说,注入组就是比规则组优先级高的组,注入组一来,规则组必须停止,先让注入组转换,转换结束,规则组才能继续转换。所以,注入组是不支持连续转换的,如果它一直连续转换,岂不是规则组一直不能转换。但是如果使用了“自动注入模式”,注入组是支持使用连续转换的(在此模式里,必须禁止注入通道的外部触发。)

对单通道而言,不用使用扫描模式,所以非扫描模式即可;
单次转换:假如开启了ADC通道1,每次有外部事件,就会转换一次;
连续转换:假如开启了ADC通道1,只要来一次外部事件,就会一直转换。又因为规则通道就一个数据寄存器,所以需要DMA传输数据;

对多通道而言,必须使用扫描模式。在非扫描模式下,只会转换第一个通道;
单次转换:假如开启了ADC通道1、2、3,每次有外部事件,就按照通道的转换顺序转换一次(顺序是由ADC_SQRX控制的);当然也需要DMA传输。
连续转换:假如开启了ADC通道1、2、3,只要来一次外部事件,就会一直按照通道的转换顺序转换:1->2->3->1->2->3…。当然也需要DMA传输。

对于注入组来说,最多能使用四个ADC通道,并且每一个通道都有自己的数据存储寄存器,所以并不需要DMA传输。

规则组和注入组是可以同时使用的。例如通道1、2设置为规则组,通道3、4设置为注入组。

对于转换模式如果还不清楚的话,可以看这个:ADC扫描模式理解

三、对某些寄存器的理解

1、ADC_CR2

adc转换时间,【STM32重学】,stm32,ADC

在stm32的参考手册中,该寄存器的第20位:EXTTRIG:用于是否开启外部触发事件。
我一开始理解,ADC如果用软件触发的话,就不用开启该位,因为软件触发不算是外部,只有中断、定时器事件才算是外部事件。我错了,并不是这样的。
根据最上边的结构图也能看到,想要触发规则通道必须开启EXTTRIG。
根据EXTSEL位也能看出,111为软件触发,剩余的为中断和定时器事件,所以它指的外部事件全部都包括了。根据下图也能得到证实:
adc转换时间,【STM32重学】,stm32,ADC

2、ADC_SQRX

adc转换时间,【STM32重学】,stm32,ADC

ADC_SQR1、2、3,是用来设置规则组通道个数和扫描时的转换顺序。
我想要让通道几第几个转换,那么我就把它写到第几个转换的位置。
例如,在库函数中,通道1设定为第一个转换的,通道2设定为第二个转换的。
你可以去底层的寄存器配置看看。adc转换时间,【STM32重学】,stm32,ADC

四、库函数注意事项

adc转换时间,【STM32重学】,stm32,ADC

我们常用的库函数中ADC的配置,红色处的两个框,是针对规则组设置的;绿色的是针对注入组设置的,它们两个是互不干扰的。

adc转换时间,【STM32重学】,stm32,ADC

这个是针对ADC_CR2的位设置的,开始规则组(注入组)的转换,以及开启其可以启动规则组(注入组)转换的外部触发事件;文章来源地址https://www.toymoban.com/news/detail-754606.html

到了这里,关于【STM32学习】模数转换器——ADC的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32 ADC—模数转换器

    目录 一、ADC功能框图 1.电压输入范围 2.输入通道 3.转换顺序 4.触发源 5.转换时间 6.数据寄存器 二、ADC初始化结构体介绍 三、ADC常用固件库函数 四、实验设计 1.独立模式-单通道-中断读取 2.独立模式-(单)多通道-必须采用DMA读取 3.双重模式-多通道-规则同步 简介:STM32单片机

    2024年02月05日
    浏览(47)
  • STM32模数转换器(ADC)

    1.ADC的简要  我们首先说一下ADC的转换过程,然后说一下原理,当然如果嫌啰嗦可以直接跳过。  ADC是英文Analog-to-Digital Converter缩写,翻译过来就是模数转换器,是指将连续变化的模拟信号转换为离散的数字信号的器件。A/D转换的作用是将时间连续、幅值也连续的模拟信号转

    2024年02月16日
    浏览(52)
  • STM32之模数转换器(ADC)

    一、模数转换器介绍 1、模数转换器简介 为什么使用模拟转换器?? 因为MCU只能识别01010101的数字信号,而外部物理信号均为模拟信号,如声音、光、电等,所以为了让计算机能够处理外部物理的信息,必须要通过模拟转换器将模拟量转换成数字量。 模数转换器:将模拟信号

    2024年02月20日
    浏览(43)
  • STM32之模数转换器ADC

    目录 1、ADC介绍 1.什么是ADC? ADC的全称是Analog-to-Digital Converter,指模拟/数字转换器  2.ADC的性能指标 3.ADC特性 12位分辨率 4.ADC通道 5.ADC转换顺序  6.ADC触发方式  7.ADC转化时间  8.ADC转化模式  9.模拟看门狗 实验:使用ADC读取烟雾传感器的值  CubeMX配置   ​编辑 代码实现  效

    2024年02月04日
    浏览(72)
  • STM32F4_模数转换器(ADC)详解

    目录 1. ADC是什么 2. ADC主要特性 3. ADC框图 3.1 ADC开关控制 3.2 ADC时钟 3.3 通道选择 3.4 单次转换模式和连续转换模式 3.5 时序图 3.6 模拟看门狗 4 温度传感器 5. ADC中断 6. ADC初始化结构体 6.1 ADC相关实验配置 7. 相关寄存器 7.1 ADC控制寄存器:ADC_CR1和ADC_CR2 7.2 ADC通用控制寄存器:A

    2024年02月15日
    浏览(36)
  • STM32f103入门(10)ADC模数转换器

    ADC简介 ADC(Analog-Digital Converter)模拟-数字转换器 ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁 12位逐次逼近型ADC,1us转换时间 输入电压范围:0~ 3.3V,转换结果范围:0~ 4095 18个输入通道,可测量16个外部和2个内部信号源

    2024年02月10日
    浏览(47)
  • 超详细!!STM32-ADC模数转换器-驱动内部温度传感器

      在STM32微控制器系列中,ADC(Analog-to-Digital Converter)是一个重要的外设模块,它允许微控制器将模拟信号转换成数字信号以进行处理。模拟信号–数字信号。    MCU只能处理数字量(10011001),如果需要MCU区分模拟输入信号时,MCU直接做不了,需要将模拟信号通过模数转换

    2024年02月19日
    浏览(46)
  • STM32入门笔记08_ADC模数转换器+案例: ADC单通道&ADC多通道

    ADC(Analog-Digtal Converter) 模拟-数字转换器 ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量, 建立模拟电路到数字电路的桥梁 12位逐次逼近型ADC, 1us转换时间 输入电压范围: 0~3.3V, 转换结果范围: 0~4095 18个输入通道, 可测量16个外部和2个内部信号源 规则组和注入组

    2024年02月04日
    浏览(53)
  • 快速了解A/D(模数转换器)

    以下是一个简要的概述: A/D转换器是一种电子设备 ,用于将模拟信号转换为数字信号。它将连续变化的模拟信号离散化为一系列数字值,以便于数字系统的处理和分析。 A/D转换器的原理图 通常包括模拟输入电路、采样保持电路、编码器、数字输出接口等。 了解A/D转换器的

    2024年02月06日
    浏览(40)
  • 基于51单片机 + MQ-3酒精传感器 + ADC0832模数转换器 + LCD1602液晶显示器的酒精检测系统

    废话不多说,直接上东西。本文是基于51单片机的酒精检测系统设计,用的元器件有:51单片机、MQ-3酒精传感器、ADC0832模数转换器、 LCD1602液晶显示器、喇叭等元器件。 1、MQ-3 酒精检测传感器,用于检测酒精浓度。当然采集到的数据是模拟的还需要通过ADC0832模数转换器将其转

    2024年02月12日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包