STM32F407-14.3.11-01互补输出和死区插入

news2024/11/16 19:49:47

互补输出和死区插入


高级控制定时器(TIM1 和 TIM8)可以输出两路互补信号,并管理输出的关断与接通瞬间。
这段时间通常称为死区,用户必须根据与输出相连接的器件及其特性(电平转换器的固有延迟、开关器件产生的延迟...)来调整死区时间
每路输出可以独立选择输出极性(主输出 OCx③ 或互补输出 OCxN④)。可通过对 TIMx_CCER寄存器中的 CCxP② 和 CCxNP⑤ 位执行写操作来完成极性选择。
互补信号 OCx③ 和 OCxN④ 通过以下多个控制位的组合进行激活:TIMx_CCER 寄存器中的 CCxE⑦ 和 CCxNE⑦ 位以及 TIMx_BDTR 和 TIMx_CR2 寄存器中的 ①MOE、OISx、OISxN、OSSI 和 OSSR 位。更多详细信息,请参见第 382 页的表 73:具有断路功能的互补通道 OCx③ 和 OCxN④ 的输出控制位。应当注意,切换至 IDLE(MOE① 下降到 0)的时刻,死区仍然有效。
CCxE⑦ 和 CCxNE⑦ 位同时置 1 并且 MOE① 位置 1(如果存在断路)时,将使能死区插入。 
TIMx_BDTR 寄存器中的 DTG[7:0]① 位用于控制所有通道的死区生成。将基于参考波形 OCxREF① 生成 2 个输出 OCx③ 和 OCxN④。如果 OCx③ 和 OCxN④ 为高电平有效:
●    输出信号 OCx③ 与参考信号相同,只是其上升沿相对参考上升沿存在延迟。
●    输出信号 OCxN④ 与参考信号相反,并且其上升沿相对参考下降沿存在延迟。
如果延迟时间大于有效输出(OCx③ 或 OCxN④)的宽度,则不会产生相应的脉冲。
--------------------------------------------------------------------------------------------------------------------------


--------------------------------------------------------------------------------------------------------------------------
下图所示为死区发生器的输出信号与参考信号 OCxREF① 之间的关系。(在这些示例中,假定 ②CCxP=0、⑤CCxNP=0、①MOE=1、⑦CCxE=1 并且 ⑦CCxNE=1)

--------------------------------------------------------------------------------------------------------------------------


--------------------------------------------------------------------------------------------------------------------------
死区延迟对于所有通道均相同,可通过 TIMx_BDTR 寄存器中的 DTG① 位进行编程。有关延迟时间计算的信息,请参见第 386 页的第 14.4.18 节:TIM1 和 TIM8 断路和死区寄存器(TIMx_BDTR)。
将 OCxREF① 重定向到 OCx③ 或 OCxN④
在输出模式(强制输出模式、输出比较模式或 PWM 模式)下,通过配置 TIMx_CCER 寄存器中的 CCxE⑦ 和 CCxNE⑦ 位,可将 OCxREF① 重定向到 OCx③ 输出或 OCxN④ 输出。
通过此功能,可以在一个输出上发送特定波形(如 PWM 或静态有效电平),而同时使互补输出保持其无效电平。或者,使两个输出同时保持无效电平,或者两个输出同时处于有效电平,两者互补并且带死区。
注意: 
如果仅使能 OCxN④ (⑦CCxE=0, ⑦CCxNE=1),两者不互补,一旦 ①OCxREF 为高电平,①OCxN 即变为有效。例如,如果 ⑤CCxNP=0,则 ④OCxN=OCxRef①。另一方面,如果同时使能 OCx③ 和 OCxN④ (⑦CCxE=⑦CCxNE=1),OCx③ 在 OCxREF① 为高电平时变为有效,而 OCxN④ 则与之互补,在 OCxREF① 为低电平时变为有效。

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

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

相关文章

MySQL之时间戳(DateTime和TimeStamp)

MySQL之时间戳(DateTime和TimeStamp) 文章目录: MySQL之时间戳(DateTime和TimeStamp)一、DateTime类型二、TimeStamp类型三、DateTime和TimeStamp的区别 当插入数据时,需要自动记录一个时间时候&#xff0c…

llama.cpp部署(windows)

一、下载源码和模型 下载源码和模型 # 下载源码 git clone https://github.com/ggerganov/llama.cpp.git# 下载llama-7b模型 git clone https://www.modelscope.cn/skyline2006/llama-7b.git查看cmake版本: D:\pyworkspace\llama_cpp\llama.cpp\build>cmake --…

git 本地改动无法删除

1. 问题 记录下git遇到奇怪的问题,本地有些改动不知道什么原因无法删除 git stash, git reset --hard HEAD 等都无法生效,最终通过强制拉取线上解决 如下图: 2. 解决 git fetch --all git reset --hard origin/master执行这两…

LeedCode刷题---双指针问题

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C/C》 《LeedCode刷题》 键盘敲烂,年薪百万! 双指针简介 常见的双指针有两种形式,一种是对撞指针,一种是左右指针。 对撞指针:一般用于顺序结构中&…

马斯克极简5步工作法 —— 筑梦之路

马斯克的五步流程法则: 第一步:确定需求 第二步:极力删除零件或过程 第三步:简化和优化 第四步:加快周期时间 第五步:自动化特别注意:完成前三步之前,千万不要考虑加速和自动化&…

JVM类加载全过程

Java虚拟机类加载的全过程,即加载,验证,准备,解析,初始化 一、加载 加载 是 类加载过程中的一个阶段, 有以下三部分组成 1)通过一个类的全限定名来获取定义此类的二进制流 2)将这…

跨域问题的解决办法

1、产生跨域问题样式 前台写完,直接访问后台接口,会产生跨域的问题,需要配置文件去解决这个问题 从源http://localhost:8080访问http://localhost:8088/books的XMLHttpRequest已被CORS策略阻止:请求的资源上没有Access- control - allow - o…

C++学习之路(十八)C++ 用Qt5实现一个工具箱(点击按钮以新窗口打开功能面板)- 示例代码拆分讲解

上篇文章,我们用 Qt5 实现了在小工具箱中添加了《增加托盘图标并且增加显示和退出菜单》功能。今天我们把按钮打开功能的方式改一改,让点击按钮以新窗口打开功能面板。下面我们就来看看如何来规划开发这样的小功能并且添加到我们的工具箱中吧。 老规矩&…

个人博客搭建保姆级教程-HTML页面编写篇

选择模板 首先我们要选一个好的模板,然后对模板进行剪裁。我的模板是在站长之家进行下载的 素材下载-分享综合设计素材免费下载的平台-站长素材 我选的模板的具体地址是 个人博客资讯网页模板 这里需要我们学习一下在前边一篇文章里提到的HTML、JavaScript、CSS…

量化交易全流程(八)

本节目录 随机森林 支持向量机 朴素贝叶斯 神经网络构建 将机器算法融入量化投资领域,不同于一般的量化交易策略,从一类数据中自动分析获得规律,利用规律对未知数据进行预测的算法。 决策树:决策树具有分层或者树状结构&…

【已验证】SqlBulkCopy 执行批量插入的时候报超时问题-解决办法

把datatable里面的数据插入到数据库,但是数据量大的情况下批量插入会提示超时,所以把datatable的数据分批写入数据库的 using (SqlConnection connection new SqlConnection(ConnectionString)){connection.Open();int pageSize 100000;//SqlBulkCopy大…

C++基础 -39- 阶段练习 编写通用数组

功能要求 -1- 使用尾插法和尾删法对数组中的数据修改 -2- 构造函数传入数组的大小和容量 -3- 可以通过下标的方式访问数组的中的元素 -4- 可以获取数组中的元素个数和数组的容量 #include <iostream> using namespace std; template<class T> class MyArray {publi…

什么是网站?

这篇文章是我学习网站开发&#xff0c;阶段性总结出来的。可以帮助你 通俗易懂 地更加深刻理解网站的这个玩意。 一&#xff0c;网站和网页的区别&#xff1f; 网站是由一个个网页组成。我们在浏览器上面看到的每一个页面就是网页&#xff0c;这些 相关的 网页组成一个网站。…

上传文件获得下载链接方法:直链!直链!

&#xff01;非 百度网盘 不是直接用网盘下载&#xff0c;要用直链&#xff0c;百度上有很多方法。 我自己研究了个&#xff0c;跳过百度网盘输密码进网页的方法 还是先还是要把文件上传网盘让后搜索网盘获取直链的方法&#xff08;那百度网盘举例&#xff09; 地址 https:…

常见的几种计算机编码格式

前言&#xff1a; 计算机编码是指将字符、数字和符号等信息转换为计算机可识别的二进制数的过程&#xff0c;正因如此&#xff0c;计算机才能识别中英文等各类字符。计算机中有多种编码格式用于表示和存储文本、字符和数据&#xff0c;实际走到最后都是二进制&#xff0c;本质一…

Flink核心概念

并行度 当要处理的数据量非常大时&#xff0c;我们可以把一个算子操作&#xff0c;“复制”多份到多个节点&#xff0c;数据来了之后就可以到其中任意一个执行。这样一来&#xff0c;一个算子任务就被拆分成了多个并行的“子任务”&#xff08;subtasks&#xff09;&#xff0…

C++:智能指针[重点!]

目录 一、关于智能指针 1、引入智能指针 2、RAII 二、详述智能指针 auto_ptr unique_ptr shared_tr 循环引用 weak_ptr 定制删除器 三、关于内存泄漏 一、关于智能指针 1、引入智能指针 首先引入一个例子&#xff1a; 在Test函数中&#xff0c;new了两个对象p1p2&a…

nodejs微信小程序+python+PHP天天网站书城管理系统的设计与实现-计算机毕业设计推荐

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;…

openGauss训练营培训课程第1课时

课时1:openGauss全景介绍 1、介绍 openGauss 全景 1.1.openGauss总体架构介绍 本章节主要介绍了openGauss发展的历史&#xff0c;现状以及未来。对当前的DataPod和DataKit 2种openGauss当前主推的场景化产品进行了介绍。同时对openGauss的整个逻辑模块的视图进行了讲解。 …

MCU 的 TOP 15 图形GUI库:选择最适合你的图形用户界面(二)

在嵌入式系统开发中&#xff0c;选择一个合适的图形用户界面&#xff08;GUI&#xff09;库是至关重要的。在屏幕上显示的时候&#xff0c;使用现成的图形库&#xff0c;这样开发人员就不需要弄清楚底层任务&#xff0c;例如如何绘制像素、线条、形状&#xff0c;如果再高级一点…