STM32H750外设ADC之动态低功耗特性

目录

概述

1 模式实现(AUTDLY)

2 自动注入模式 (JAUTO=1)

3 AUTDLY 模式

4 实现案例


概述

本文主要介绍STM32H750外设ADC之动态低功耗特性相关的内容。包括:模式实现(AUTDLY)、自动注入模式 (JAUTO=1)、 AUTDLY 模式以及一些应用案例。

1 模式实现(AUTDLY)

ADC 会执行由 AUTDLY 配置位控制的自动延迟转换模式。自动延迟转换可用于简化软件,并可优化采用低频时钟的应用(此类应用可能存在 ADC 溢出的风险)的性能。

AUTDLY=1 时,仅当同一组内所有之前的数据已处理完毕时,才能开始新的转换:

ADC x 配置寄存器 (ADCx_CFGR)( x=1 到 3)
ADC x configuration register
偏移地址: 0x0C
复位值: 0x8000 0000
 

位 14 AUTDLY:延迟转换模式 (Delayed conversion mode)
此位由软件置 1 和清零,用于使能/禁止自动延迟转换模式。
0:自动延迟转换模式关闭
1:自动延迟转换模式开启


注: 仅当 ADSTART=0 且 JADSTART=0 时(这可确保当前未进行任何转换),才允许通过软件对此位执行写操作。
如果使能了双重模式( ADCx_CCR 寄存器的 DAMDF 位不等于零),则从 ADC 的 AUTDLY 位
不再可写,其内容与主 ADC 的 AUTDLY 位相等。
 

对于常规转换: ADCx_DR 寄存器已读取或者 EOC 位已清零时。
对于注入转换: JEOS 位已清零时。


通过这种方式,可自动调整 ADC 的速度,使其适应系统读取数据的速度。延时插入到每次常规转换后(无论 DISCEN=0 还是 1)和每个注入转换序列后(无论JDISCEN=0 还是 1)。

位 16 DISCEN:常规通道的不连续模式 (Discontinuous mode for regular channels)
此位由软件置 1 和清零,用于使能/禁止常规通道的不连续模式。
0:禁止常规通道的不连续模式
1:使能常规通道的不连续模式
 

不会在不同组的转换之间插入延时(常规转换后即进行注入转换,反之亦然):

 如果在常规转换的自动延时期间发生注入触发,注入转换会立即开始。
 注入序列完成后, ADC 会等待上一常规转换的延时(如果未结束),然后才会启动新的
常规转换。

2 自动注入模式 (JAUTO=1)

自动注入模式 (JAUTO=1) 下的操作略有不同,仅当上一注入转换序列的自动延时已结束时( JEOS 已清零时),才能开始进行新的常规转换。这是为了确保软件可在启动新序列之前读取给定序列的所有数据。

位 25 JAUTO: 注入组自动转换 (Automatic injected group conversion)
通过软件将该位置 1 和清零可在常规组转换后分别使能/禁止注入组自动转换。
0:禁止注入组自动转换
1:使能注入组自动转换
 

要在连续自动注入和自动延时组合模式下停止转换(JAUTO=1、 CONT=1 且 AUTDLY=1),请按照以下程序进行操作:
1. 等待,直至 JEOS=1(不会重新启动任何转换)
2. 将 JEOS 清零 (Clear NAK)
3. 将 ADSTP 置 1
4. 读取常规数据。
否则,如果 JEOS 在 ADSTP 已置 1 后清零,可能重新启动新的常规序列。

3 AUTDLY 模式

在 AUTDLY 模式下,如果在正在进行的常规序列期间或序列的最后一次常规转换之后的延时期间发生硬件常规触发事件,则会忽略该触发事件。但是,如果触发事件发生在该延时之后,即使发生在延时之后的注入序列期间,也会将该触发事件视为待处理事件。随后,会在注入序列的延时结束时开始转换。在 AUTDLY 模式下,如果在正在进行的注入序列期间或序列的最后一次注入转换之后的延时期间发生硬件注入触发事件,则会忽略该触发事件。

4 实现案例

1)AUTODLY=1,连续模式下的常规转换,软件触发


2)AUTODLY=1,被注入转换中断的常规硬件转换( DISCEN=0; JDISCEN=0)

 3)AUTODLY=1,被注入转换中断的常规硬件转换( DISCEN=1, JDISCEN=1)

4)AUTODLY=1,被注入转换中断的常规连续转换

5)AUTODLY=1,自动注入模式 (JAUTO=1)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【1646】医院人员管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java 医院人员管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0&…

力扣经典150题(3)

文章目录 17.电话号码的字母组合77.组合46.全排列74.搜索二维矩阵215.数组中的第K个最大元素 17.电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相…

金融风控信用评分卡建模(Kaggle give me credit数据集)

1 数据预处理数据 数据来源于Kaggle的Give Me Some Credit,包括25万条个人财务情况的样本数据 1.1 导包读数据 import pandas as pd import numpy as np import matplotlib.pyplot as plt from sklearn.ensemble import RandomForestRegressor import seaborn as …

STM32 学习13 低功耗模式与唤醒

STM32 学习13 低功耗模式与唤醒 一、介绍1. STM32低功耗模式功能介绍2. 常见的低功耗模式(1)**睡眠模式 (Sleep Mode)**:(2)**停止模式 (Stop Mode)**:(3)**待机模式 (Standby Mode)**: 二、睡眠模式1. 进入…

Android视角看鸿蒙第十二课-鸿蒙的布局之相对布局RelativeContainer

Android视角看鸿蒙第十二课-鸿蒙的布局之相对布局RelativeContainer 导读 相对布局和线性、层叠布局一样都是类似于Android布局的,之前两篇文章已经了解线性、层叠布局的使用方法,这篇文章一起来学习下鸿蒙中的相对布局。 之前的文章中,我偶…

C#基础|对象属性Property基础使用,业务特性

哈喽,你好,我是雷工。 探究OOP中属性的奥秘 认识类的属性(Property) 01 属性的使用 作用:在面向对象(OOP)中主要用来封装数据。 要求:一般采用Pascal命名法(首字母要…

解决Linux CentOS 7安装了vim编辑器却vim编辑器不起作用、无任何反应

文章目录 前言一、解决vim不起作用(卸载重新安装)1.重新安装vim2.测试vim是否能正常使用 二、解决vim: error while loading shared libraries: /lib64/libgpm.so.2: file too short报错三、解决vim编辑器不能使用方向键和退格键问题 remove vim-common …

QT绘制。矩形A绕点B旋转。要求B点与矩形的角相连的直线,始终保持最短

矩形A绕点B旋转。要求B点与矩形的角相连的直线,始终保持最短 已知矩形4个角的坐标(H0,H1,H2,H3),B点的坐标. 思路: 判断矩形的位置,在B点的左上,左下,右上,右下 怎么判断…

ubuntu 使用conda 创建虚拟环境总是报HTTP错误,转换多个镜像源之后仍报错

最近在使用Ubuntu conda创建虚拟环境时,总是报Http错误,如下图所示: 开始,我以为是conda 镜像源的问题,但是尝试了好几个镜像源都不行,还是报各种各样的HTTP错误。后来查阅很多,总算解决了。解…

简化图卷积 笔记

1 Title Simplifying Graph Convolutional Networks(Felix Wu、Tianyi Zhang、Amauri Holanda de、 Souza Jr、Christopher Fifty、Tao Yu、Kilian Q. Weinberger)【ICML 2019】 2 Conclusion This paper proposes a simplified graph convolutional m…

栈和队列-介绍与实现(超级!!!详解-C语言)

目录 栈 栈的介绍 栈的概念 栈的结构 栈的实现 初始化栈 StackInit 销毁栈 StackDestroy 入栈 StackPush 出栈 StackPop 获取栈顶元素 StackTop 检查栈是否为空 StackEmpty 获取栈中有效元素个数 StackSize 队列 队列的介绍 队列的概念 队列的结构 队列的应用 队列的实现 …

上位机图像处理和嵌入式模块部署(树莓派4b用skynet实现进程通信)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 前面我们说过,在工业系统上面一般都是使用多进程来代替多线程。这后面,主要的原因还是基于安全的考虑。毕竟一个系统里面&a…

吴恩达机器学习笔记:第 8 周-13 聚类(Clustering)13.3-13.5

目录 第 8 周 13、 聚类(Clustering)13.3 优化目标13.4 随机初始化 第 8 周 13、 聚类(Clustering) 13.3 优化目标 K-均值最小化问题,是要最小化所有的数据点与其所关联的聚类中心点之间的距离之和,因此 K-均值的代价函数(又称畸变函数 Dis…

如何从架构层面降低公有云多可用区同时故障的概率

阿里云和腾讯云都曾出现过因一个组件故障而导致所有可用区同时瘫痪的情况。本文将探讨如何从架构设计的角度减小故障域,在故障发生时最小化业务损失,并以 Sealos 的稳定性实践为例,分享经验教训。 抛弃主从,拥抱点对点架构 从腾…

如何安全高效地进行网点文件下发?

随着IT技术的飞速发展,以银行为代表的企业数字化技术转型带来了大量的电子化文档传输需求。文件传输数量呈几何级数增长,传统集中式文件传输模式在爆炸式的增长需求下,银行网点文件下发的效率、可靠性、安全性等方面,都需要重点关…

Spring Boot:Web应用开发之增删改查的实现

Spring Boot 前言实现增删改查功能 前言 增删改查功能作为 Web 应用中的基础且重要的组成部分,是基本的数据库操作,也是实现业务逻辑和功能的关键要素。下面简单介绍使用 Spring Boot 实现增删改查的功能。 实现增删改查功能 在上一章 Spring Boot&am…

jvm(JVM快速入门、stack栈、堆、GC垃圾回收、Arthas)

文章目录 1. JVM快速入门1.1. 结构图1.2. 类加载器ClassLoader1.3. 执行引擎Execution Engine1.4. 本地接口Native Interface1.5. Native Method Stack1.6. PC寄存器(程序计数器)1.7. Method Area方法区 2. stack栈3. 堆3.1. 堆体系概述3.1.1. 新生区3.1.2. 老年代3.1.3. 永久代…

分类预测 | Matlab实现SCSO-SVM沙猫群优化算法优化支持向量机多特征分类预测

分类预测 | Matlab实现SCSO-SVM沙猫群优化算法优化支持向量机多特征分类预测 目录 分类预测 | Matlab实现SCSO-SVM沙猫群优化算法优化支持向量机多特征分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现SCSO-SVM沙猫群优化算法优化支持向量机多特征分类…

小程序AI智能名片商城系统直连:打造用户与企业无缝对接的新时代!

在高度不确定性的商业环境中,企业如何快速响应市场变化,实现与用户的零距离接触?答案就是——小程序AI智能名片商城系统直连!这一创新工具不仅为企业打开了与用户直接连接的大门,更为企业提供了持续收集用户反馈、快速…

AI图书推荐:如何用ChatGPT和Python进行数据可视化

《如何用ChatGPT和Python进行数据可视化》的原版英文图书标题:Python 3 Data Visualization Using ChatGPT - GPT-4 ,作者是 Oswald Campesato ,2023年出版 本书旨在向读者展示Python 3编程的概念和数据可视化的艺术。它还探讨了使用ChatGPT/…
最新文章