STM32------ADC

news2024/11/29 20:46:08

ADC

1、ADC介绍

1、1介绍

ADC即模数转换器。

例如:电信号转化成数字量。

1、2 ADC类型

并联比较型、逐次逼近型

并联比较型如下:

分压部分+比较部分+编码部分。

ADC分辨率:三位(上图)

优点:转换速度快。

缺点:成本高、功耗高、分辨率低。

逐次逼近型如下:

控制电路+数码寄存器+D/A转换器+电压比较强

优点:结果简单、低功耗。

缺点:转换速度较慢。

特点:分辨率和采样速度矛盾,分辨率越高,采样速率越低。

ADC特性

分辨率:刻度划分

例如:3.3V 12位ADC

刻度划分为3.3/4096。

转换时间:时间越短,采样率越高,AD转换需要时间。

精度:精度受ADC性能、温度和气压影响。

量化误差:用数字量近似表示模拟量,采用四舍五入原则,产生的误差。

2、ADC工作原理

2、1 ADC框图

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

 

2、输入通道

芯片外部16个,芯片内部2个,共18个。

3、转换序列

 4、触发源

5、转换时间

6、数据寄存器

7、中断

2、2 参考电压:

ADC供电电压:2.4~3.6V

ADC输入电压范围:0~3.3V

2、3 输入通道

有3个ADC,16个通道由IO复用来

2、4 转换序列

规则组、注入组

规则组有16个转换,注入组4个转换。

执行优先级对比(注入组可以打断规则组转换):

转换序列:

规则序列对应规则组转换,对应寄存器:SQR3 SQR2 SQR1

注入序列:JSQR

例如:转换两个通道 JL[1:0]为1 ,注入序列的转换顺序从

 2、5 触发源

触发转换的方法有两种:

1、ADON位触转换(限F1)

当ADC_CR寄存器的ADON为1时,单独给ADON位写1,只能启动规则组转换。

2、外部事件触发转换

外部事件触发转换分为:规则组外部触发和注入组外部触发。

触发源:

规则组外部触发使用方法:

2、6 转换时间

1、如何设置ADC时钟:

 例程中如何设置ADC时钟:

2、设置ADC转换时间

2、7 数据寄存器

2、8 中断

DMA请求(只适用于规则组)

规则组每个通道转换结束后,除了可以产生中断外,还可以产生DMA请求,我们利用DMA及时把转换好的数据传输到指定的内存里,防止数据被覆盖。

2、9 单次转换模式和连续转换模式

2、10 扫描模式

2、11 不同模式组合的作用

一种比较少用的模式:不连续采样模式(间断模式),只适用在扫描模式下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/523699.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

类和对象下

文章目录 一、初始化列表1、语法:2、初始化顺序 二、static成员三、友元1、友元函数2、友元类 四、拷贝对象时的编译器优化例1、例2、例3、 一、初始化列表 1、语法: 初始化列表: 以一个冒号开始,接着是一个以逗号分隔的数据成员…

【Python PyTorch】零基础也能轻松掌握的学习路线与参考资料

文章目录 一、PyTorch的基础知识二、PyTorch数据处理三、PyTorch模型构建四、PyTorch模型训练和评估五、总结 作为当前最流行的深度学习框架之一,PyTorch已成为许多数据科学家和深度学习工程师的首选。本文将提供一条针对初学者的完整的学习路线,包括PyT…

hnust 湖南科技大学 2023 安卓 期中考试 复习资料

前言 ★:录音中提到的致谢:hwl,lqx,ly,sw重点来源:7-8班 PPT和录音内容来源:PPT知识点大多很抽象,需要联系实际代码来理解多做1-9章课后习题,编程题可以不做获取最新版本…

【AI大模型】“讯飞星火”大模型计划10月底赶超ChatGPT

文章目录 前言你使用过这种对话式AI吗?有什么看法或感受?“讯飞星火大模型将超越chatgpt?”这类型的人工智能对现在的社会有什么意义?这类型的人工智能,未来前景如何?申请体验写在最后 前言 5月6日&#xf…

第十三章 使用Postfix与Dovecot部署邮件系统

文章目录 第十三章 使用Postfix与Dovecot部署邮件系统一、电子邮件系统1、常见的邮件协议2、注意事项 二、部署电子邮件系统1、部署基础的电子邮件系统(1)、配置服务器主机名称(2)、配置服务器的DNS地址(3)…

【LeetCode: 115. 不同的子序列 | 暴力递归=>记忆化搜索=>动态规划 | 位置对应】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

队列Queue和栈Stack

什么是队列queue? 先进先出表,是一种受限制的线性表.其限制是仅允许在表的队尾进行插入数据和表的队头进行删除数据. 队列的使用场景: 线程池ThreadPoolExecutor ThreadPoolExecutor源码中核心变量(前面3个是重点) corePoolSize线程池维护的最小线程数量,哪怕是空闲的BlockQ…

Carla仿真三:Traffic Manager交通管理器详解

CARLA Traffic Manager 一、什么是Traffic Manager1、Traffic Manager简介2、Traffic Manager框架3、Traffic Manager模块 二、Traffic Manager控制方法1、TM控制交通参与者的自动驾驶的规则2、TM控制交通参与者行为的API摘要3、TM控制交通参与者行为的API 三、Traffic Manager…

力扣sql中等篇练习(十九)

力扣sql中等篇练习(十九) 1 苹果和桔子的个数 1.1 题目内容 1.1.1 基本题目信息1 1.1.2 基本题目信息2 1.1.3 示例输入输出 a 示例输入 b 示例输出 1.2 示例sql语句 # 没有使用group by也可以使用sum函数,因为默认是所有数据行自成一组 SELECT SUM(b.apple_countIFNULL(c.…

[LeetCode周赛复盘] 第 104 场双周赛20230513

[LeetCode周赛复盘] 第 104 场双周赛20230513 一、本周周赛总结6366. 老人的数目1. 题目描述2. 思路分析3. 代码实现 6367. 矩阵中的和1. 题目描述2. 思路分析3. 代码实现 6369. 最大或值1. 题目描述2. 思路分析3. 代码实现 6423. 英雄的力量1. 题目描述2. 思路分析3. 代码实现…

C:sh: 总是爆出:1: pause: not found

在linux平台下应该使用:pause() 导入:#include unistd.h 也就是unix下的标准函数,而不是代码不跨平台,从其他语言转来的新手很不舒服 参考:sh: 1: pause: not found_yjyn1的博客-CSDN博客

mysql数据库的表约束

表的约束 5.1:表的约束的概念 定义: 数据库表约束是用于定义和实施数据完整性的规则或条件。它们被应用于数据库表中的列,以确保数据的一致性、有效性和准确性。表约束可以强制执行特定的规则,限制数据的插入、更新或删除操作&…

ChatGPT的诞生和发展

ChatGPT的诞生和发展 ChatGPT是一种基于GPT模型的聊天机器人。GPT模型是一种基于深度学习的自然语言处理模型,由OpenAI团队开发,可以生成与输入文本相关的连续文本。ChatGPT的诞生和发展,可以追溯到GPT模型的开发与应用。 一、GPT模型的开…

jdk与tomcat的安装-----linux软件的安装与配置

安装方式 jdk的安装 上传jdk压缩包解压 tar -zxvf jdk压缩包名字 -C 解压地址配置环境变量 vi /etc/profileJAVA_HOMEjdk解压地址 PATH$JAVA_HOME/bin:$PATY重新加载profile文件,使更改的配置生效 source /etc/profile 查看是否安装成功 java -verisontomcat的…

Android MMKV - 性能强悍的存储工具(腾讯出品)

MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。从 2015 年中至今在微信上使用,其性能和稳定性经过了时间的验证. 起源 微信作为一个即时通讯项目,需要记录数据比较多.需…

基于Android studio学生考勤签到系统app

功能详细介绍 客户端 签到:用户再登录软件后,可以点击签到,进行在线签到,以记录当天的考勤信息。 请假:用户点击请假后,可以在线申请请假,等待教师的查看审核。 我的班级:可以查看个…

软考A计划-真题-分类精讲汇总-第七章(项目管理)

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分享&am…

解决爬虫工程师的烦心事,【淘宝1688京东】API接口封装系列,商品详情页的采集,可高并发运行

API是应用程序的开发接口,在开发程序的时候,我们有些功能可能不需要从到到位去研发,我们可以拿现有的开发出来的功能模块来使用,而这个功能模块,就叫做库(libary)。比如说:要实现数据传输的安全&#xff0c…

手写自己的Springboot-2-从Servlet容器选择彻底理解自动配置

文章目录 在Springboot工程中怎样对Servlet容器进行切换底层原理猜想,需要做哪些事情1.pom依赖2.判断注入哪个bean3.让使用者能够加载到自动配置类目前问题及通用处理方式真实Springboot处理方式 进行测试关键点总结 如果还没有看第一篇文章的伙伴,建议先看第一篇文章 手写自己…

C++ OpenMesh拉普拉斯光顺平滑网格模型

程序示例精选 C OpenMesh拉普拉斯光顺平滑网格模型 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对<<C OpenMesh拉普拉斯光顺平滑网格模型>>编写代码&#xff0c;代码整洁&#x…