STM TIM(二)输出比较

news2024/9/23 21:19:38

STM TIM(二)输出比较

输出比较简介

  • OC(Output Compare)输出比较

  • 输出比较可以通过比较CNT(CNT计数器)与CCR寄存器(捕获/比较寄存器)值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形

    • 比较CNT和CCR的值,CNT计数自增,CCR是我们给定的一个值,当CNT大于CCR、小于CCR或者等于CCR时,输出就会对应置1或置0。这样就可以输出一个电平不断跳变的PWM波形了。
  • 每个高级定时器和通用定时器都拥有4个输出比较通道

  • 高级定时器的前3个通道额外拥有死区生成和互补输出的功能

PWM简介

  • PWM(Pulse Width Modulation)脉冲宽度调制

  • 在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速等领域

  • PWM参数:

  • 频率 = 1 / TS 占空比 = TON / TS 分辨率 = 占空比变化步距

在这里插入图片描述

在这里插入图片描述

输出比较通道(高级)

  • 通常在外面要接一个最基本的推挽输出的电路,MOS管左边是控制极,比如说给高电平就导通,低电平就断开,中间是输出。

  • 上管导通,下管断开,输出就是高电平

  • 下管导通,上管断开,输出就是低电平

  • 上下管都导通,电源短路,不允许

  • 上下管都断开,输出就是高阻态

  • 如果有两个这样的推挽电路,就构成了H桥电路,就可以控制直流电机正反转了,如果有三个这样的推挽电路,就可以用于驱动三相无刷电机了。

  • 直接控制这个电路,需要有两个控制级,并且这两个控制级电平是相反的,也就是互补,因为上管导通,下管就必须断开,下管导通,上管就必须断开。

  • OC1和OC1N就是两个互补的输出端口,分别控制上管和下管的导通和关闭。
  • 切换上下管导通状态时,如果在上管关断的瞬间,下管立刻就打开,可能会因为器件的不理想,上管还没完全关断,下管就已经导通了,出现了短暂的上下管同时导通的现象,这会导致功率损耗,引起器件发热。
  • 为了避免这个问题,就有了死区生成电路,它会在上管关闭的时候,延迟一小段时间,再导通下管,下管关闭的时候,延时一小段时间,再导通上管。这样就可以避免上下管同时导通的现象了。这就是死区生成和互补输出的用途。

在这里插入图片描述

输出比较通道(通用)

  • CNT计数器和CCR1第一路的捕获/比较寄存器进行比较,当CNT>CCR1,或者CNT=CCR1时,就会给输出模式控制器传一个信号,然后输出模式控制器就会改变它输出OC1REF的高低电平,REF(reference 参考信号)信号实际上就是指信号的高低电平。
  • REF信号
    • 往上面这一路,可以前往主模式控制器,可以把REF映射到主模式的TRGO输出上去。
    • 一般走下面这一路,到达极性选择器,给TIMx_CCER寄存器的CC1P位写0,信号就会往上走,电平不翻转;写1,信号就会往下走,通过非门取反,输出的信号就是输入信号高低电平翻转后的信号。极性选择,就是选择是否要将输入的高低电平翻转后输出。
  • 输出使能电路,选择是否输出。
  • OC1引脚,就是CH1通道的引脚,在引脚定义表中就可以直到具体是哪个GPIO口了。
  • ETRF输入,是定时器的一个小功能,一般不用

在这里插入图片描述

输出比较模式

模式描述
冻结CNT=CCR时,REF保持为原状态
匹配时置有效电平CNT=CCR时,REF置有效电平
匹配时置无效电平CNT=CCR时,REF置无效电平
匹配时电平翻转CNT=CCR时,REF电平翻转
强制为无效电平CNT与CCR无效,REF强制为无效电平
强制为有效电平CNT与CCR无效,REF强制为有效电平
PWM模式1向上计数:CNT<CCR时,REF置有效电平,CNT≥CCR时,REF置无效电平 向下计数:CNT>CCR时,REF置无效电平,CNT≤CCR时,REF置有效电平
PWM模式2向上计数:CNT<CCR时,REF置无效电平,CNT≥CCR时,REF置有效电平 向下计数:CNT>CCR时,REF置有效电平,CNT≤CCR时,REF置无效电平

PWM基本结构

以PWM模式1为例

  • 时基单元和运行控制部分
  • 输出比较单元,总共有4路
    • CCR捕获/比较寄存器,CCR由我们自己设定,CNT不断自增运行,同时CCR和CNT不断进行比较。
    • 输出模式控制器(PWM模式1)
      • CNT<CCR时,REF置有效电平
      • CNT≥CCR时,REF置无效电平
  • 右上角该图
    • 蓝色线代表CNT的值
    • 黄色线代表ARR的值
    • 红色线代表CCR的值
    • 绿色线代表REF输出的值

PWM工作流程

  • 蓝色线从0开始自增,一直增到ARR,也就是99,之后清0继续自增。CNT<CCR,REF置有效电平;CNT≥CCR,REF置无效电平。当CNT溢出清0后,CNT又小于CCR,所以置高电平,再之后,就又是CNT≥CCR,置低电平,这样一直持续下去,REF的值就会不断变化,并且,其占空比是受CCR的值的调控的,如果CCR设置高一些,输出占空比就变大,CCR设置低一些,输出的占空比就变小。
  • 输出的REF就是一个频率可调,占空比也可调的PWM波形,最终再经过极性选择,输出使能,最终通向GPIO口。

在这里插入图片描述

参数计算

  • PWM频率: Freq = CK_PSC / (PSC + 1) / (ARR + 1)

    • 对应计数器的一个溢出更新周期,PWM的频率就等于计数器的更新频率
  • PWM占空比: Duty = CCR / (ARR + 1)

  • PWM分辨率(占空比最小的变化步距): Reso = 1 / (ARR + 1)

在这里插入图片描述

舵机简介

  • 舵机是一种根据输入PWM信号占空比来控制输出角度的装置

  • 输入PWM信号要求:周期为20ms,高电平宽度为0.5ms~2.5ms

在这里插入图片描述

硬件电路

在这里插入图片描述

直流电机及驱动简介

  • 直流电机是一种将电能转换为机械能的装置,有两个电极,当电极正接时,电机正转,当电极反接时,电机反转

  • 直流电机属于大功率器件,GPIO口无法直接驱动,d

  • TB6612是一款双路H桥型的直流电机驱动芯片,可以驱动两个直流电机并且控制其转速和方向

在这里插入图片描述

硬件电路

在这里插入图片描述

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

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

相关文章

Camtasia2024中文免费版电脑录屏软件

真的要被录屏软件给搞疯了&#xff0c;本来公司说要给新人做个培训视频&#xff0c;想着把视频录屏一下&#xff0c;然后简单的剪辑一下就可以了。可谁知道录屏软件坑这么多&#xff0c;弄来弄去头都秃了&#xff0c;不过在头秃了几天之后&#xff0c;终于让我发现了一个值得“…

如何理解Go言中的Context?

目前看过除了《go语言程序设计》以外最好的教程&#xff1a;https://www.practical-go-lessons.com 原文&#xff1a;https://www.practical-go-lessons.com/chap-37-context 你将在本章中学到什么&#xff1f; 1.什么是上下文&#xff1f; 2.什么是链表&#xff1f; 3.如何…

DAOS学习笔记及思考

DAOS带来的思考 根据daos docs的描述&#xff0c;DAOS是Intel基于NVMe全新设计开发并开源的异步对象存储&#xff0c;充分利用下一代NVMe技术的优势&#xff0c;对外提供KV存储接口&#xff0c;提供非阻塞事物I/O&#xff0c;端到端完整性&#xff0c;细粒度的数据控制&#x…

班级信息收集小程序

老师们&#xff01;这里有一个超级实用的班级信息收集小程序&#xff0c;让你告别繁琐的手动记录成绩&#xff0c;轻松实现学生自助查询成绩&#xff01;是不是很期待&#xff1f; 什么是成绩查询系统&#xff1f; 成绩查询系统是一种基于互联网和数据库技术的应用程序&#x…

基于springboot+vue实现MOBA类游戏攻略平台项目【项目源码+论文说明】

基于springbootvue实现MOBA类游戏攻略平台 摘要 随着信息技术和网络技术的飞速发展&#xff0c;人类已进入全新信息化时代&#xff0c;传统管理技术已无法高效&#xff0c;便捷地管理信息。为了迎合时代需求&#xff0c;优化管理效率&#xff0c;各种各样的管理系统应运而生&a…

HTML5+CSS3+JS小实例:打散文字随机浮动特效

实例:打散文字随机浮动特效 技术栈:HTML+CSS+JS 效果: 源码: 【HTML+JS】 <!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" conte…

SRS Config 二 Stream Caster

SRS StreamCaster 1 官网简介 Stream Converter侦听特殊的TCP/UDP端口&#xff0c;接受客户端连接和媒体流&#xff0c;并转成RTMP流&#xff0c;推送给SRS。 简单来说&#xff0c;它将其他流转成RTMP流&#xff0c;工作流如下&#xff1a; Client ---PUSH--> Stream Co…

微信小程序云开发笔记-初始化商城小程序

一 下载小程序工具 下载地址 二 创建小程序 三 初始化小程序 1 把cloudfunctions文件夹内所有文件删除 2 把miniprogram\components下所有文件删除 3 pages文件夹里面只保留index文件夹&#xff0c;其他都删除并修改index文件夹下文件 index.js 把数据清空&#xff0c;只保…

GEAR框架: Tractian的敏捷工程文化

GEAR(齿轮)框架是工业初创公司TRACTIAN提出的敏捷开发框架&#xff0c;强调一切以人为中心&#xff0c;客户需求为最高优先级&#xff0c;互动胜于流程的开发文化。原文: The GEAR Framework — Tractian’s Agile Engineering Culture GEAR框架&#xff0c;由TRACTIAN和Pietro…

国外调查问卷项目赚美金是真的吗?

大家好&#xff0c;我是橙河网络&#xff0c;一家问卷公司老板&#xff0c;这几年国外问卷这个项目比较火热&#xff0c;很多人都靠这个项目赚的盆满钵满&#xff0c;这篇文章就详细介绍一下国外调查问卷项目赚美金是真的吗&#xff1f; 国外问卷调查是一种付费的市场调研方法…

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(二)

本教程中介绍一些基于JPA/ spring的特性&#xff0c;重点介绍JPA-Spring集成以及如何利用这些功能。您将学习如何&#xff1a; 为JPA和Spring设置一个项目逆向工程数据库表来生成实体实现创建、检索、编辑和删除功能启用容器管理的事务 在上文中&#xff08;点击这里回顾>…

ST 2.0 霍尔FOC 的相关难点总结

文章目录 HALL_Init_Electrical_Angle()Clark 变换获取电流park 变换 , 逆park变换逆park变换的幅度限制扇区计算 https://www.zhihu.com/people/Temo/posts每个相位的执行时间计算 &#xff08;如果自己记录的不够清楚&#xff0c;可以打开同目录。资源文件目录下的&#xff1…

【vue3】依赖注 provide、inject(父组件与儿子、孙子、曾孙子组件之间的传值)

一、基本用法&#xff1a; //父组件 import { ref, provide } from vue const radio ref<string>(red) provide(myColor,radio) //注入依赖//儿子组件、孙子组件、曾孙子组件 import { inject } from vue import type { Ref } from vue; const myColor inject<Ref&l…

保护云数据安全的关键环节是什么?

云数据安全是维护数据隐私和保护关键信息的关键一环。在云中存储和处理数据提供了巨大的便利性和效率&#xff0c;但同时也伴随着风险。本文将介绍保护云数据的关键环节是什么! 1、数据加密&#xff1a;在传输和存储数据时使用强加密是保护数据的基本步骤。确保数据在云中存储时…

C++类与对象,构造函数,析构函数,拷贝构造函数

C类与对象&#xff0c;构造函数&#xff0c;析构函数&#xff0c;拷贝构造函数 1. 类的6个默认成员对象2. 构造函数2.1 概念2.2 特性 3. 析构函数3.1 概念3.2 特性 4. 拷贝构造函数4.1 概念4.2 特性 所属专栏&#xff1a;C“嘎嘎" 系统学习❤️ &#x1f680; >博主首页…

uni-app:实现picker下拉列表的默认值设置

效果 分析 1、在data中将index8的初始值设置为-1&#xff0c;表示未选择任何选项&#xff1a; index8: -1, //选择的下拉列表下标 2、在bindPickerChange8事件处理函数中添加条件判断。如果选择的值是-1&#xff0c;则将this.index8设置为"请输入"&#xff0c;否则将…

智能电表远程抄表在电力系统中的运用分析

摘要&#xff1a;随着我国国民经济的提升&#xff0c;人民的生活水平不断改善。智能小区的建设在城市中得到了迅速发展&#xff0c;智能电表在各个小区内十分常见。 本文简单阐述智能电表远程抄表在电力系统中的相关功能和实现方法&#xff0c;详细分析了智能电表远程抄表在电…

docker环境,ubuntu18.04安装VTK8.2和PCL1.9.1

下载源码和依赖库 首先下载源码VTK8.2: Download | VTK 下载PCL1.9.1链接&#xff1a;Releases PointCloudLibrary/pcl GitHub 下载好了以后&#xff0c;先安装PCL依赖 sudo apt-get update sudo apt-get install git build-essential linux-libc-dev sudo apt-get instal…

Windows安装Redis,并设置开机启动保姆版

Redis是一种键值对数据库&#xff0c;也称为内存数据库&#xff0c;因为它可以将数据存储在内存中&#xff0c;而不是在磁盘上。它主要用于高速读写数据和缓存。Redis支持多种数据结构&#xff0c;如字符串、哈希、列表、集合和有序集合等&#xff0c;并提供了许多高级功能&…

03142《互联⽹及其应⽤》各章简答题解答(课后习题)

03142《互联⽹及其应⽤》各章简答题解答&#xff08;课后习题&#xff09; *第* *1* *章* *名词解释* 互联网网络&#xff08;Internet&#xff09; 互联网是建立在一组共同协议之上的网络设备和线路的物理集合&#xff0c;是一组可共享的资源集。&#xff08;1 分&#xf…