0602STM32定时器输出比较

STM32定时器输出比较

    • PWM简介

主要用来输出PWM波形,PWM波形又是驱动电机的必要条件,所以如果想用STM32做一些有电机的项目,比如智能车,机器人等。那输出比较功能就要认真掌握
1.PWM驱动LED呼吸灯
2.PWM驱动舵机
3.PWM驱动直流电机
在这里插入图片描述
IC Input Compare 输入捕获
CC Capture/Compare 输入捕获和输出比较的单元
在这里插入图片描述
输入捕获和输出比较共用的,当使用输入捕获时,就是捕获寄存器
当使用输出比较时,就是比较寄存器。
在输出比较这里,这个电路会比较CNT和CCR的值,CNT计数自增,CCR是我们给定的一个值,当CNT大于CCR、小于CCR或者等于CCR时,这里输出就会对应的置1,置0,置1,置0.这样就可以输出一个电平不断跳变的PWM波形了。这就是输出比较的功能

通用计数器这四个通道有各自的CCR寄存器,但是它们是共用一个CNT计数器的。
高级定时器的前三个输出比较还额外具有死区生成和互补输出的功能。是用于驱动三相无刷电机的。暂时不作为重点内容
先主要学习通用定时器。

PWM简介

在这里插入图片描述
PWM秘诀:天下武功,唯快不破
应用场景必须是一个惯性系统,就是说LED在熄灭的时候,由于余晖和人眼视觉暂留现象。LED不会立马熄灭,而是有一定的惯性,过一小段时间才会熄灭。
电机也是,当电机断电时,电机的转动不会立马停止,而是有一定的惯性,过一会才会停。
具有惯性的系统才能使用PWM

高低电平跳变的数字信号,可以等效为中间虚线所表示的模拟量的。
PWM频率越快,那它等效模拟的信号就越平稳,同时性能开销就越大,一般PWM的频率在几KHz到几十KHz,这个频率就已经足够快了。
如果占空比只能以1%,2%,3%等这样以1%的步距跳变,那它的分辨率是1%,分辨率就是占空比变化的精细程度
分辨率需要多高,看项目的需要。如果既要高频率,又要高分辨率,这就对硬件电路要求比较高了。

在这里插入图片描述

在这里插入图片描述
左边是CNT计数器和CCR第一路的捕获/比较寄存器,它俩进行比较,当CNT>CCR1,或者CNT=CCR1时,就会给输出模式控制器传一个信号,然后输出模式控制器就会改变它输出OC1REF的高低电平。
REF信号实际上就是指信号的高低电平,reference。 参考信号
ETRF输入,这是定时器的一个小功能,一般不用,需要了解。REF信号可以前往主模式控制器。
可以把REF映射到主模式的TRGO输出上去,
不过REF的主要去向还是下面这一路,CC1P是一个极性选择,给这个寄存器写0,信号就会往上走,就是信号电平不翻转。进来啥样出去就是啥样,写1的话,信号就会往下走,就是信号通过一个非门取反。那输出信号就是输入信号高低电平翻转的信号。这就是极性选择,就是选择是不是要把高低电平反转一下。接着就是输出使能电路,选择要不要输出,最后就是OC1引脚,这个引脚就是CH1通道的引脚,在引脚定义表里就可以知道具体是哪个GPIO口了。
这就是输出的通道

接下来还要看输出模式控制器,具体是怎么工作的。什么时候给REF高电平,什么时候给REF低电平。

在这里插入图片描述

此处高级定时器的第4个通道和通用定时器的结构基本是一样的

在这里插入图片描述

左边是CNT和CCR比较的结果,右边是输出比较电路,最后通过TIM_CH1输出到GPIO引脚上,下面还有三个同样的单元,分别输出到CH2、 CH3、 CH4

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

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

相关文章

vue中获取剪切板中的内容

目录 1.说明 2.示例 3.总结 1.说明 在系统中的画面或者时外部文件中进行拷贝处理后,在页面中可以获取剪切板的内容。 2.示例 方式①(直接获取) // 异步函数获取剪切板内容 async function getClipboardContent(ev: any) {try {ev.preventDefault()const clip…

搜维尔科技:【研究】触觉技术将在5年内以8种方式改变人们的世界

触觉技术在过去几年中发展迅猛,大大提高了反馈的精确度和真实度。其应用产生了真正的影响,数百家公司和企业都集成了触觉技术来增强培训和研究模拟。 虽然触觉技术主要用于 B2B 层面,但触觉技术可能会彻底改变我们的生活,尤其是通…

DLMS协议中的高级安全(HLS)身份验证

1.四步身份验证协议 在IEC 62056-53中已说明,ACSE提供部分高级身份安全(HLS)验证服务。高级身份安全验证适用于通信通道不能提供内部安全,应采取防范措施以防止偷听和信息(密码)重现的情况。这时&#xff…

视频共享融合赋能平台LntonCVS视频监控业务平台技术方案详细介绍

LntonCVS国标视频综合管理平台是一款智慧物联应用平台,核心技术基于视频流媒体,采用分布式和负载均衡技术开发,提供广泛兼容、安全可靠、开放共享的视频综合服务。该平台功能丰富,包括视频直播、录像、回放、检索、云存储、告警上…

【数据结构】详解堆

一、堆的概念 堆(Heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵 完全二叉树的 数组对象。 堆是非线性数据结构,相当于一维数组,有两个直接后继。 如果有一个关键码的集合K { k₀,k₁,k₂ &#xff0…

数据结构(双向链表)

链表的分类 链表的结构⾮常多样,以下情况组合起来就有8种(2 x 2 x 2)链表结构: 虽然有这么多的链表的结构,但是我们实际中最常⽤还是两种结构:单链表和双向带头循环链表 1.⽆头单向⾮循环链表&#xff1a…

Kafka系列之:Kafka存储数据相关重要参数理解

Kafka系列之:Kafka存储数据相关重要参数理解 一、log.segment.bytes二、log.retention.bytes三、日志段四、log.retention.check.interval.ms五、数据底层文件六、index、log、snapshot、timeindex、leader-epoch-checkpoint、partition.metadata一、log.segment.bytes 参数lo…

第十课:telnet(远程登入)

如何远程管理网络设备? 只要保证PC和路由器的ip是互通的,那么PC就可以远程管理路由器(用telnet技术管理)。 我们搭建一个下面这样的简单的拓扑图进行介绍 首先我们点击云,把云打开,点击增加 我们绑定vmn…

Android 10.0 系统属性控制蓝牙分享功能打开和关闭功能实现

1.前言 在10.0的系统rom产品定制化开发中,在进行某些蓝牙模块开发中,原生系统中会默认蓝牙有分享功能,而在实际的项目中 要求去掉分享功能,所以接下来分析下相关功能实现 2.系统属性控制蓝牙分享功能打开和关闭功能实现的核心类 frameworks\base\core\java\android\app\…

【面试题】Redo log和Undo log

Redo log 介绍Redo log之前我们需要了解一下,mysql数据操作的流程: 上述就是数据操作的流程图,可以发现sql语句并不是直接操作的磁盘而是通过操作内存,然后进行内存到磁盘的一个同步。这里我们必须要了解一些区域: 缓…

华为HCIP Datacom H12-821 卷42

42.填空题 如图所示,MSTP网络中SW1为总根,请将以下交换机与IST域根和主桥配对。 参考答案:主桥1468 既是IST域根又是主桥468 既不是又不是就是25 解析: 主桥1468 既是IST域根又是主桥468 既不是又不是就是25 43.填空题 网络有…

[日进斗金系列]用码上飞解决企微开发维修管理系统的需求

前言: 今天跟大家唠唠如何用小money生 大money的方法,首先我们需要准备一个工具。 这个工具叫码上飞CodeFlying,它是目前国内首发的L4级自动化智能软件开发平台。 它可以在短时间内,与AI进行几轮对话就能开发出一个可以解决实际…

WEB前端06-BOM对象

BOM浏览器对象模型 浏览器对象模型:将浏览器的各个组成部分封装成对象。是用于描述浏览器中对象与对象之间层次关系的模型,提供了独立于页面内容、并能够与浏览器窗口进行交互的对象结构。 组成部分 Window:浏览器窗口对象 Navigator&…

MacOS命令行运行fortran程序|编程私教解答

你好,我是悦创。 Fortran 是一种经典的编程语言,广泛用于科学计算和工程领域。如果你使用 macOS 系统并希望在命令行环境中编译和运行 Fortran 程序,这篇教程将引导你完成整个过程。 1. 准备工作 首先,确保你的 macOS 系统已安…

【Android】传给后端的Url地址被转码问题处理

一、问题 为什么使用Gson().toJson的时候,字符串中的会被转成\u003d 在 Gson 中,默认情况下会对某些特殊字符进行 HTML 转义,以确保生成的 JSON 字符串在 HTML 中是安全的。因此,字符 会被转义为 \u003d。你可以通过禁用 HTML 转…

区块链资料

Quantstamp - Public Security Assessments smart-contract-sanctuary-bsc/contracts/mainnet at master tintinweb/smart-contract-sanctuary-bsc GitHub https://github.com/slowmist/Cryptocurrency-Security-Audit-Guide/blob/main/README_CN.md sFuzz: 高效自适应的智…

Spring3(代理模式 Spring1案例补充 Aop 面试题)

目录 一、代理模式 介绍 意图 主要解决的问题 使用场景 实现方式 关键代码 应用实例 优点 缺点 使用建议 注意事项 结构 什么是代理模式? 为什么要用代理模式? 有哪几种代理模式? 1. 静态代理 实现 2. 基于接口的动态代理…

打造代码规范:在Gradle中配置代码风格检查

打造代码规范:在Gradle中配置代码风格检查 在软件开发过程中,代码风格一致性是保证项目质量和可维护性的重要因素。Gradle作为一个强大的构建工具,支持多种代码风格检查工具,如Checkstyle、PMD、FindBugs等。本文将详细介绍如何在…

MATLAB基础应用精讲-【数模应用】非线性回归模型

目录 前言 算法原理 非线性回归参数估计 模型评估 非线性回归方法 1、SVR 2、决策树回归 3、knn回归 4、RandomForest回归 5、XGBoost回归 6、神经网络MLP回归 7、LightGBM回归 8、GBDT回归 算法步骤: 非线性回归预测模型 一、数据探索 二、建立线性回归模型…

Android Studio环境安装指南

一、安装前注意事项: 安装android studio之前,请先检查下操作系统中的用户名(C盘->用户或user)下是否含有中文,如果含有中文,请新建一个用户(必须全部英文),JDK的安装和配置也请重新安装和配…