STM32之ADC

devtools/2025/3/6 9:14:23/

在这里插入图片描述
逐次逼近式ADC:
在这里插入图片描述
左边是8路输入通道,左下是地址锁存和译码,可将通道的地址锁存进ADDA,ADDB,ADDC类似38译码器的结构,ALE为锁存控制键,通道选择开关可控制选择单路或者多路通道,DAC为数模转换器,给他一个数值,可以输出一个电压,DAC给出的电压通过比较器跟通道过来的电压比较,通过不断的改变DAC的值,来使DAC的电压逐次逼近通道给的电压,这个过程中,DAC每次去上个值的一半。比较完成了以后,从8位三态锁存缓冲器输出。EOC是转换结束信号,START是开始转换,CLOCK是ADC时钟,ADC内部是一步一步进行判断的,所以需要时钟来推动,VREF正负是DAC的参考电压,VCC和GND跟VREF接在一起,他们是一样的。

STM32的ADC:
在这里插入图片描述
18个输入通道包括16个GPIO端口跟一个温度传感器和一个内部电压。模拟多路开关可以一次选择多个通道或者单个通道,多通道又分为最多4通道的注入通道和最多16通道的规则通道,规则组只有一个规则通道数据寄存器,所以要考虑数据被覆盖的问题,而注入通道有四个注入通道数据寄存器,所以不用担心数据被覆盖的问题,注入组相当于餐厅的VIP座位,配的服务员比较多,而规则通道则是普通座位,服务员只有一个,所以要注意数据被覆盖的问题。为解决这个问题,一般使用DMA来帮运数据。相当于找外援。对于STM32的ADC,触发数据转换的信号有两种,一种是软件触发即程序中调用代码,一种是硬件触发,即如下图的触发源:
在这里插入图片描述
从上图可知触发源有外部中断和定时器通道以及定时器的主模式,一般选择定时器的主模式来自动触发,这样就可以避免频繁进中断。在这里插入图片描述
左上角即为ADC的输入电压部分。参考逐次式逼近结构。ADDCLK就是ADC的时钟,最大14MHz,一般只能选6或8分频。注意:模拟值数字转化器可以发出DMA请求。在这里插入图片描述上面主要是模拟看门狗还有中断。在这里插入图片描述
通道与引脚的关系:
在这里插入图片描述
规则组的4种转换模式:
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
数据对齐:ADC12位的,数据寄存器是16位的,所以存在数据转换即数据对齐在这里插入图片描述
一般选数据右对齐。


http://www.ppmy.cn/devtools/164960.html

相关文章

Linux 基本开发工具的使用(yum、vim、gcc、g++、gdb、make/makefile)

文章目录 Linux 软件包管理器 - yum理解什么是软件包和yum如何查看/查找软件包如何安装软件如何实现本地机器和云服务器之间的文件互传如何卸载软件 Linux 编辑器 - vim 的使用vim 的基本概念vim 的基本操作vim 命令模式各命令汇总vim 底行模式各命令汇总vim 的简单配置 Linux …

【算法方法总结·四】字符串操作的一些技巧和注意事项

【算法方法总结四】字符串操作的一些技巧和注意事项 【算法方法总结一】二分法的一些技巧和注意事项【算法方法总结二】双指针的一些技巧和注意事项【算法方法总结三】滑动窗口的一些技巧和注意事项【算法方法总结四】字符串操作的一些技巧和注意事项 【字符串操作】 此章节涉…

Python从PowerBI Server上取得报表数据的方法

下载PowerBI报表文件,提取数据文件读取数据并存为CSV文件 使用Python和Restful API下载PowerBI Server上报表为.pbix格式的报表文件,再把它当做zip文件解压出其中的数据文件,然后用Python读取该文件的内容并存储为CSV文件。最后详细论述Powe…

Python 面向对象高级编程-定制类

目录 __str__ __iter__ __getitem__ __getattr__ __call__ 小结 看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的。 __slots__我们已经知道怎么用了,__len__()方法我们也知道是为了能让class作用于len()…

确定信号分析:从傅里叶级数到信号带宽的Matlab实践

关键词:傅里叶变换 信号能量 功率谱密度 自相关函数 信号带宽 Matlab仿真 内容摘要: 本文系统讲解确定信号分析的核心理论与Matlab实践,涵盖周期信号的傅里叶级数展开、非周期信号的傅里叶变换及性质、信号能量与功率的计算、自相关函数与频…

能简述一下动态 SQL 的执行原理吗

MyBatis 的动态 SQL 是一种强大的功能,允许开发者根据条件动态生成 SQL 语句。它的执行原理主要涉及以下几个步骤: ### **1. 解析映射文件** 当 MyBatis 启动时,会加载并解析映射文件(Mapper.xml),提取其中…

61. Three.js案例-彩色旋转立方体创建与材质应用

61. Three.js案例-彩色旋转立方体创建与材质应用 实现效果 知识点 WebGLRenderer(WebGL渲染器) 构造器 WebGLRenderer( parameters : Object ) 参数类型描述antialiasBoolean是否执行抗锯齿(默认false)alphaBoolean是否包含alpha通道(默认false)方法 setSize( width…

探秘基带算法:从原理到5G时代的通信变革【四】Polar 编解码(一)

文章目录 2.3 Polar 编解码2.3.1 Polar 码简介与发展背景2.3.2 信道极化理论基础对称容量与巴氏参数对称容量 I ( W ) I(W) I(W)巴氏参数 Z ( W ) Z(W) Z(W)常见信道信道联合信道分裂信道极化 本博客为系列博客,主要讲解各基带算法的原理与应用,包括&…