07 STM32ADC

AD单通道和AD多通道

使用ADC可以对高电平和低电平之间的任意电压进行量化,最终用一个变量来表示,读取这个变量。所以ADC就是一个电压表,把引脚电压值测出来,放在一个变量里。

在这里插入图片描述
数字到模拟的桥梁,PWM来控制电机的速度,LED灯的亮度。这是DAC的功能,同时PWM只有完全导通和完全断开两种状态,两种状态上都没有功率损耗,所以在直流电机调速这种大功率的应用场景,使用PWM来等效模拟量,是比DAC更好的选择,并且PWM电路更加简单,更加常用,所以可以看出PWM还是挤占了DAC的很多应用空间。
目前DAC的主要应用是在波形生成这些领域,比如信号发生器、音频解码芯片等。这些领域PWM还是不好替代的。
一般12位AD值,它的表示范围就是0-212-1。这里涉及到ADC的两个关键参数了,第一个是分辨率,一般用多少位来表示,12位AD值,量化结果的范围就是0-4095,位数越高,量化结果就越精细,对应分辨率就越高。
第二个是转换时间,就是转换频率,AD转换是需要花一小段时间的,这里的1us就表示从AD转换开始,到产生结果,需要花1us的时间,对应AD转换的频率就是1MHz,这个就是STM32 ADC的最快转换频率。如果需要转换一个频率非常高的信号,那就要考虑一下这个转换频率是不是够用,如果你的信号频率比较低,那这个最大1MHz的转换频率也完全够用了。
输入电压范围,一般要求都是在芯片供电的负极和正极之间变化的,最低电压就是负极0V,最高电压就是正极3.3V,经过ADC转换之后,最小值就是0,最大值是4095,0V对应0,3.3V对应4095,中间都是一一对应的线性关系。
外部信号就是16个GPIO口,在引脚上直接接模拟信号就行了,不需要任何额外的电路,引脚就直接能测电压,2个内部信号时内部温度传感器和内部参考电压,温度传感器可以测量CPU的温度,比如电脑可以显示一个CPU温度,内部参考电压是一个1.2V左右的基准电压,这个基准电压是不随外部供电电压变化而变化的,所以如果芯片的供电不是标准的3.3V,那测量外部引脚的电压可能就不对,这时可以读取这个基准电压进行校准,这样就可以得到正确的电压值了。
规则组和注入组两个转换单元,就是STM32ADC的增强功能了,普通的AD转换流程是,启动一次转换,读一次值,然后再启动,再读值,这样的流程,但是STM32的ADC就比较高级,可以列一个组,一次性启动一个组,连续转换多个值,并且有两个组,一个是用于常规使用的规则组,一个是用于突发事件的注入组。
ADC一般可以用于测量光线强度,温度这些值,可以用模拟看门狗来自动执行若高于某个阈值进行一些操作。模拟看门狗可以检测指定的某些通道,当AD值高于它设定的上阈值或者低于下阈值时,他就会申请中断,你就可以在中断函数里执行相应的操作。这样就不用不断地手动读值,再用if进行判断了。

在这里插入图片描述
这是逐次逼近性ADC的内部结构,了解这个结构对学习STM32的ADC帮助很大。
这个图是ADC0809的内部结构图,它是一个独立8位逐次逼近型ADC芯片,在以前单片机性能还不是很强的时候,需要外挂一个ADC芯片才能进行AD转换,这个ADC0809是一款比较经典的ADC芯片

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot家校共育平台-计算机毕业设计源码54235

摘 要 采用高效的SpringBoot框架,家校共育平台为家长与教师提供了便捷的沟通渠道。该平台整合了丰富的教育资源,实现了家校之间的即时信息互通,从而助力协同教育。 为进一步方便用户访问和使用,平台与微信小程序进行了深度整合。家…

SPAW7000高精度功率分析记录仪,测试方案

测试目标 评估双电机四驱系统中前后电机的性能。 分析前后电机之间的实时联动情况。 测量并分析电机控制器的输入与输出功率。 计算功率转换效率和损耗。 验证电机系统的谐波特性。 测试设备 SPAW7000高精度功率分析记录仪:用于测量功率、电压、电流等参数&am…

【LeetCode Cookbook(C++ 描述)】一刷二叉树综合(上)

目录 LeetCode #226:Invert Binary Tree 翻转二叉树「遍历」「分而治之」广度优先搜索:层序遍历 LeetCode #101:Symmetric Tree 对称二叉树递归法迭代法 LeetCode #100:Same Tree 相同的树递归法迭代法 LeetCode #559:…

八种排序算法的复杂度(C语言)

归并排序(递归与非递归实现,C语言)-CSDN博客 快速排序(三种方法,非递归快排,C语言)-CSDN博客 堆排序(C语言)-CSDN博客 选择排序(C语言)以及选择排序优化-CSDN博客 冒泡排序(C语言)-CSDN博客 直接插入排序(C语言)-CSDN博客 希尔排序( 缩小增量排序 )(C语言)-CSDN博客 计数…

赋能基层,融合创新:EasyCVR视频汇聚平台构建平安城市视频共享系统

一、雪亮工程建设的意义 雪亮工程的核心在于通过高清视频监控、环境监测和智能预警等先进技术手段,构建一个高效、智能、安全、便捷的社会安全防控体系。这一工程的建设不仅代表了现代化科技手段在城市治安管理中的应用,更是提升社会安全保障能力、推动…

LeetCode.3152.特殊数组II

题目描述: 如果数组的每一对相邻元素都是两个奇偶性不同的数字,则该数组被认为是一个 特殊数组 。 你有一个整数数组 nums 和一个二维整数矩阵 queries,对于 queries[i] [fromi, toi],请你帮助你检查 子数组 nums[fromi..toi…

纷享销客CRM AI产品架构概览、产品特色

一、纷享销客CRM AI产品架构概览 纷享AI平台架构分为三个主要层次:AI基础设施层、AI平台层和AI应用层。每个层次都由一系列功能模块组成,旨在为客户提供强大的技术支持和灵活的解决方案。 1.Al基础设施层 AI基础设施层是整个AI平台的底层支撑&#xff…

使用WooCommerce订阅续订进行货到付款:自定义订单状态

WooCommerce订阅插件允许商店设置周期性的订阅产品。客户购买订阅后,系统会自动根据设定周期进行续订。但对于货到付款的场景,自动续订就面临挑战。 自定义订单状态 为了实现货到付款的续订流程,我们需要创建一个自定义订单状态。以下是具体…

牛客刷题总结——Python入门07:内置函数

🤵‍♂️ 个人主页: @北极的三哈 个人主页 👨‍💻 作者简介:Python领域优质创作者。 📒 系列专栏:《牛客题库-Python篇》 🌐推荐《牛客网》——找工作神器|笔试题库|面试经验|实习经验内推,求职就业一站解决 👉 点击链接进行注册学习 文章目录 010 内置函…

鸿蒙开发入门day06-ArkUI简介

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,还请三连支持一波哇ヾ(@^∇^@)ノ) 目录 ArkUI简介 基本概念 两种开发范式 不同应用类型支持的开发范式 …

Linux--应用层协议HTTP协议(http服务器构建)

目录 1.HTTP 协议 2.认识 URL 3.urlencode 和 urldecode(编码) urlencode(URL编码) urldecode(URL解码) 4.HTTP 协议请求与响应格式 4.1HTTP 常见方法(三种) 5.HTTP 的状态码…

如何妙用哈希表来优化遍历查找过程?刷题感悟总结,c++实现

先上题目 题目链接:题目链接 这题我最先想到的就是前缀和a,构造好了以后就遍历每一个[l,r]数组(满足题目要求的连续区间数组),奈何倒数第二个样例时间超限 先给出原思路代码 class Solution { public:int subarray…

【深入理解SpringCloud微服务】Ribbon源码解析

【深入理解SpringCloud微服务】Ribbon源码解析 Ribbon的原理RestTemplate中的拦截器链Ribbon的拦截器如何将拦截器放入到RestTemplate中 Ribbon中的核心类LoadBalancerAutoConfigurationLoadBalancerInterceptorLoadBalancerClientILoadBalancerServerListIRuleIPing Ribbon核心…

【高性能高易用】物联网AI开发套件----Qualcomm® RB3 Gen 2 开发套件

Qualcomm RB3 Gen 2 开发套件 专为高性能计算、高易用性而设计的物联网开发套件 Qualcomm RB3 Gen 2 开发套件拥有先进的功能和强大的性能,包括强大的AI运算,12 TOPS 算力和计算机图形处理能力,可轻松创造涵盖机器人、企业、工业和自动化等…

【nginx 第一篇章】认识一下 NGINX 服务器

一、简介 Nginx (engine x) 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。由俄罗斯程序员 Igor Sysoev 开发,并在2004年首次公开发布。Nginx 以其高并发处理能力、低内存消耗、稳定性、丰富的功能集、简单的配置以及低学…

HarmonyOS应用三之组件生命周期和参数传递

目录: 1、生命周期的执行顺序2、页面数据传递3、图片的读取4、数据的备份和恢复5、轮播图6、页面布局图 1、生命周期的执行顺序 /** Copyright (c) 2023 Huawei Device Co., Ltd.* Licensed under the Apache License, Version 2.0 (the "License");* yo…

html+css 实现hover 换背景跳动按钮

前言:哈喽,大家好,今天给大家分享html+css 实现hover 换背景跳动按钮!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕 目录 📚一、效果📚二、原理解析💡这个按钮hover后,有4个变化:📝1.1…

⼆叉树选择题

⼆叉树选择题 本篇文章是初阶二叉树的收尾,旨在进一步加深对于二叉树性质的理解,祝你有一个愉快的学习之旅! 💡 ⼆叉树性质 1)对任何⼀棵⼆叉树, 如果度为 0 其叶结点个数为 n0 , 度为 2 的分⽀结点个数为 n2 ,则有…

Java 阿里云视频直播开发流程

首先来看一下直播效果 推流工具有很多种(例如OBS、阿里云直播Demo推流、等等,我用的是芯象导播)阿里播放器地址 一、直播基础服务概述 官方文档说明 二、直播域名配置需要两个域名(推流域名、播流域名) 官方文档说…

haproxy七层代理总结

一、HAProxy概念 1.1 什么是HAProxy? HAProxy是一款开源、高性能的负载均衡器和代理服务器,专为TCP和HTTP应用而设计。它可以将客户端的请求分发到多台后端服务器,从而提高应用的可用性和性能。HAProxy支持多种负载均衡算法和健康检查机制&a…