Stm32高级定时器(三)
Stm32高级定时器(三)
1 互补输出和死区插入
1.1 死区:某个处于相对无效状态的时间或空间

本来OCX信号与OCXREF时序同相同步,OCXN信号与OCXREF时序反相同步。但为了安全考虑,以OCXREF为参考基准,OCXN和OCX通道将理论上本该导通的时间点往后延时一下,即做从截止切换到导通状态的延时。
特点:
● OCx输出信号与参考信号相同,只是它的上升沿相对于参考信号的上升沿有一个延迟。
● OCxN输出信号与参考信号相反,只是它的上升沿相对于参考信号的下降沿有一个延迟。
1.2 STM32高级定时器中的死区的计算(请看底部参考文献)
计算时,先确定Tdts,然后结合你需要的死区时间选择相应的计算档位,最后确定DTG[7:0]。假设STM32f407的TIM1工作在168M,设置Tdts=1/168 us,死区设置为4us,经过估算该死区时间落在DTG[7:5]=111段。
先算得DTG[4:0]=01010B,再跟DTG[7:5]组合在一起,最后算得DTG[7:0]=11101010B,即0xEA.
需要注意的是,死区时间的计算是分段计算的,各段的时间步长和计算方式有差别,不可随便填写数据。
1.3 STM32高级定时器配置死区参数不合适时的问题
死区时间不能比嵌入死区前的互补通道的有效脉冲还宽,否则相应通道的输出呈无效状态。
当死区时间比有效电平还长时,就没有机会输出有效电平了。

死区波形延迟大于负脉冲

死区波形延迟大于正脉冲
2 使用刹车功能:PWM急停
通过硬件紧急终止输出
当使用刹车功能时,依据相应的控制位(TIMx_BDTR寄存器中的MOE、OSSI和OSSR位,TIMx_CR2寄存器中的OISx和OISxN位),输出使能信号和无效电平都会被修改。
刹车源既可以是刹车输入引脚又可以是一个时钟失败事件。时钟失败事件由复位时钟控制器中的时钟安全系统产生。

上图说明,刹车信号(BREAK[MOE])触发时,输出OCx与OCxN在不同的CCxE,CCxP,OISx,CCxNE, CCxNP, OISxN位控制下的输出组合
3 单脉冲模式(OPM)
这种模式允许计数器响应一个激励,并在一个程序可控的延时之后产生一个脉宽可程序控制的脉冲。

| 比较 |
向上计数方式 |
向下计数方式 |
|
延时时间 |
TIM_CCRx - 0 |
TIM_ARR - TIM_CCRx |
|
脉冲宽度 |
TIM_ARR - TIM_CCRx |
TIM_CCRx - 0 |
4 参考文献
[2] stm32之通用定时器TIM
Stm32高级定时器(三)的更多相关文章
- Stm32高级定时器(四)
Stm32高级定时器(四) 1 编码器接口模式 1.1 编码器原理 什么是正交?如果两个信号相位相差90度,则这两个信号称为正交.由于两个信号相差90度,因此可以根据两个信号哪个先哪个后来判断方向.根 ...
- Stm32高级定时器(二)
Stm32高级定时器(二) 1 主从模式:主?从? 谈论主从,可知至少有两个以上的触发或者驱动信号,stm32内部有多个定时器,可以相互之间驱动或者控制. 主模式:定时器使能只受驱动时钟控制或者输出控 ...
- Stm32高级定时器(一)
Stm32高级定时器(一) 1 定时器的用途 2 高级定时器框图 3 时基单元 4 通道 1 定时器的用途 已知一个波形求另一个未知波形(信号长度和占空比) 已知波形的信号长度和占空比产生一个相应的波 ...
- stm32高级定时器的应用——spwm
用过stm32定时器的朋友都知道,定时器的CCR寄存器,可以用来配置PWM的输出,但同样也可以用来配置spwm.废话不多说,直接上代码. 首先,你得考虑一下几个因素: 1.同步调制还是异步调制. 2 ...
- Stm32高级定时器(转自:luowei_memory)
1 定时器的用途 2 高级定时器框图 3 时基单元 4 通道 1 定时器的用途 已知一个波形求另一个未知波形(信号长度和占空比) 已知波形的信号长度和占空比产生一个相应的波形 增量正交编码器驱动电机获 ...
- STM32高级定时器TIM1产生两路互补的PWM波(带死区)
测试环境:Keil 5.20.0.0 STM32F103RBT6 固件库版本:STM32F10x_StdPeriph_Lib_V3.5.0(2011) 本文使用TIM1的通道1,通道2,产生两路1kh ...
- STM32高级定时器用于普通定时,定时周期变长
最近在用stm32定时器控制步进电机,由于普通定时器不够用,只能把TIM1当普通定时器用,我随手就把普通定时器的代码搬过去. void cs_Timer_Init(void) //TIM1 us级 { ...
- stm32高级定时器1互补输出 验证代码
GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDe ...
- 高级定时器TIM1&TIM8
高级定时器 初识stm32高级定时器: (1)高级控制定时器(TIM1 和 TIM8)和通用定时器在基本 ...
随机推荐
- alter database open resetlogs
使用resetlogs选项,会把当前的日志序号(log sequence number)重设为1,并抛弃所有日志信息.在以下条件时需要使用resetlogs选项: 在不完全恢复(介质恢复): 使用备份 ...
- C#进程与线程
public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { / ...
- DOM4J 解析 XML
1.在项目根目录下新建lib文件夹 2.把dom4j文件拷贝到lib文件夹 3.dom4j,右键Build Path---->Add To Build Path 这样就添加dom4j到项目成功 ...
- 高放的c++学习笔记之lambda表达式
lambda表达式:可以让代码看起来更整洁,有些结构简单且用的次数少的函数可以用lambda表达式替代, 通常结构是这样的[捕获列表](参数列表){函数部分} 捕获列表: lambda表达式如果在一个 ...
- Win7下部署 .NET MVC网站 之 HTTP错误 403.14-Forbidden 解决方法
今天在 IIS 7 发布MVC 站点时 遇到 ”HTTP错误 403.14-Forbidden Web 服务器被配置为不列出此目录的内容 “ 的错误提示. 一番折腾后发现在web.config 中加入 ...
- Animation 案例解释
Animation 案例解释: ------------摘自W3c 过度动画类型: linear:线性过渡.等同于贝塞尔曲线(0.0, 0.0, 1.0, 1.0) ease:平滑过渡.等同于贝塞尔曲 ...
- shopnc B2B2C商城 Nginx下开启伪静态
B2B2C商城 Nginx下开启伪静态,伪静态开启后,对系统的SEO极为有利,可以最大限度让商城页面被搜索引擎抓取,但在实际安装中,很多客户在这块都会遇到各种各样的问题. 1. 编辑商城配置文件(da ...
- HTML&CSS基础学习笔记1.21-语义化标签
语义化标签 “语义化”指的是机器在需要更少的人类干预的情况下能够研究和收集信息,让网页能够被机器理解,最终让人类受益. HTML 标签语义化是让大家直观的认识标签和属性的用途和作用,很明显<hx ...
- iOS开发之Runtime函数
1.可以通过NSObject的一些方法获取运行时信息或动态执行一些消息: 1./*Returns a Boolean value that indicates whether the receivin ...
- Scala学习笔记--Actor和并发
感谢博主lyrebing 博文地址:http://blog.csdn.net/lyrebing/article/details/20446061 1. Actor用法 1.1 Actor的基本使用 ...