STM32F407高级定时器-死区时间研究-STM32CubeMX
创始人
2024-05-26 14:02:03
0

距离上次写笔记,已经过去好长时间了

中间也折腾过不少东西,但是都没咋整理,主要是这中间都是在干活儿,不是自己想要研究的,也没想着要写。

从去年10月份开始想要学习FOC,10月份研究了一个月,到11月初,实现了SVPWM驱动BLDC电机,使用串口实现开环下转速和力矩调节。基本上算是刚刚入门, 但是后来一直去忙别的各种事情了,搁置了一年,最近想重新捡起来,发现去年的代码折腾的已经跑不起来了,于是重新开始看去年收藏夹里的教程——从最基础的高级定时器开始。高级定时器这块儿的知识,比较基础的就不赘述了,我会在文章末尾附上几个我个人认为比较好的文章,供有需要的同学学习。

之前关于死区时间的设定,一直没搞清楚,CubeMX中DeadTime就一个孤零零的文本框,也没有注释,似乎很不起眼,这次花了点儿时间,研究整理了一下,有理论计算,有上机试验,希望能帮助到有需要的同学吧。

DTG配置死区发生器详解

回归正题!下图截自《STM32F4xx中文编程手册》RM0090,DTG寄存器为TIM1 和 TIM8 断路和死区寄存器 (TIMx_BDTR)的低8位,高八位咱们暂时不用关心哈,咱们只关心低8位。DTG寄存器中的值不同,决定了死区时间的计算方法也不同。DTG寄存器的设置方法非常简单,直接通过CubeMX中DeadTime处写入即可。

 根据上图可以知道,设置死区时间的时候,根据输入到DTG的值不同,会被分为4种情况,分别是:

 1.当最高位为0 低7位为任意值,即CubeMX中DeadTime值输入为0-127时,死区时间为

[0~127]×t_{dtg}t_{dtg}=t_{DTS}

例如CubeMX中 DeadTime输入100时,理论得到死区时间DT=100×1/72MHz=1.38889us

CubeMX设置截图如下,使用TIM8高级定时器,使用通道CH1和CH1N输出互补PWM波,预分频值PSC为72-1,自动重装载值ARR为1000-1(图中DeadTime输入的为十六进制0x64,转为为十进制后即为100)

 将程序下载到正点F103ZET6核心板上,使用示波器检测PC5(CH1)与PA7(CH1N)互补方波的死区时间,得到如下截图

 图中两方波的时间差即为死区时间,测量值为1.38us,与计算值1.38889us几乎一致。

2.当DTG[7:6]为10  而DTG[5:0]为任意值时(10xx xxxx),此时死区时间DT计算公式为

DT=(64+DTG[5:0])xt_{dtg}t_{dtg}=2t_{DTS}

DT= (64+[0~63])xt_{dtg}  ,t_{dtg}=2t_{DTS}

 例如CubeMX中 DeadTime输入0xb9(1011 1001)时,理论得到死区时间 

DT= (64+(0011 1001))xt_{dtg} = (64+57)x 2t_{DTS} = (64+57)x2x1/72MHz=3.61111us

设置CubeMX中DeadTime值为0xb9

 下载烧录,示波器检测死区时间

 实际检测出死区时间为3.36us,与理论时间3.36111us基本吻合。

3.和4. 两种情况与2计算方式基本相同,不过就是需要注意,DTG[7:5]三位值已经固定,DTG[4:0]取值范围缩小至【0~31】,在确定DTG[4:0]取值数值之后,将DTG[7:5]与DTG[4:0]进行按位与操作,组成一个字节,最后将该值填入Cube MX中DeadTime处即可;另外t_{dtg}取值分别变为8倍t_{DTS}与16倍t_{DTS}

实际3 4两种情况试验我都做过了,3不放了,只把第4种情形,DTG[4:0]取值最大的情况贴图在下面吧。

设置CubeMX中DeadTime值为0xff (1111 1111)

  DT= (32+(1111 1111))xt_{dtg} = (32+31)x 16t_{DTS} = (32+31)x16x1/72MHz=14.0us

 经过实测,死区时间同样为14us,与计算结果一致。

 非常关键的t_{DTS}的计算方法

有的同学可能会好奇,  t_{dtg}=N倍t_{DTS},那这个t_{DTS}又是怎么来的呢,其实关于t_{DTS}的取值方法,官方的编程手册中同样提到了,我贴上来供大家参考。

 不做特别设置的时候,t_{DTS}=tCK_INT,即与内部时钟相同。即内部时钟频率,72MHz。

参考文章推荐

STM32F407配置STM32CubeMX通过高级定时器TIM8产生PWM互补输出(带死区和刹车)实验_xuechanba的博客-CSDN博客

STM32CUBEMX配置教程(五)高级定时器输出两路PWM波_怡步晓心l的博客-CSDN博客

STM32CubeMX的TIM1互补PWM输出,HAL库(2路,带死区)_小李(李宏松)的博客-CSDN博客

STM32 HAL库PWM回调函数的特性_Wake_Dream_2333的博客-CSDN博客_callback stm32

STM32CubeIDE 统计及控制PWM产生个数_sudaroot的博客-CSDN博客

相关内容

热门资讯

告诉你一个晒被子的最佳方式! 被子是我们朝夕相处的“好战友”,陪我们度过了一个又一个夜晚。可惜的是,虽然“朝夕相处”,很多人却忽略...
北京日报独家专访|《王者荣耀》... 【北京日报独家专访|《王者荣耀》职业电竞选手花海:未来想挑战的职业是教练】2025年5月3日,微博游...
“五一”车市打响价格战,11个... 据红星资本局不完全统计,截至5月5日,共有11个汽车品牌官宣推出了“五一”购车权益或5月限时购车权益...
美航管局陷“人荒” 航司削减航... 转自:财联社【美航管局陷“人荒” 航司削减航班数 纽瓦克机场旅客滞留成常态】财联社5月5日电,受美国...
山大齐鲁医院护士论文现“男性确... 5月4日,一篇题为“针对性护理干预在子宫肌瘤围手术期的情绪和生活质量临床应用效果”的论文在网络流传。...
五一上海楼市热闹开局:售楼处全...   今年五一假期,沪上多个热门楼盘表现亮眼。翡雲悦府、西派海上等多个热门项目接连触发限售及积分制,绿...
近期江南华南贵州等地多降水和强...   中新经纬5月5日电 据中央气象台官网消息,近期江南华南贵州等地多降水和强对流天气,返程高峰注意...
利亚德2024年实现净利-8.... 转自:北京商报北京商报讯(记者 马换换 王蔓蕾)近期,利亚德(300296)披露2024年年报显示,...
陈茂波出席亚洲开发银行年会 格隆汇5月5日|据大湾区之声,昨日(5月4日),香港特区政府财政司司长陈茂波抵达意大利米兰,出席亚洲...
朱子锋、陈芋汐分获跳水世界杯年... 转自:宁波晚报5月4日,2025年世界泳联跳水世界杯总决赛落幕。在赛后举行的2025年世界泳联跳水世...
伊拉克警方:打死2名“伊斯兰国... 伊拉克警方4日说,伊安全部门当天在首都巴格达以北打死2名极端组织“伊斯兰国”武装分子。巴格达警方消息...
1.5T、250牛·米,獠牙式... 具体来看,300TSI R-line取消金属运动脚踏板(涉及歇脚踏板、刹车和油门踏板)、自动防眩目内...
立夏养生,中医建议调养心神、清... 转自:新华社新华社长沙5月5日电 (记者 帅才)5月5日,迎来立夏节气。中医专家指出,立夏时节,要注...
暗夜守护者|深夜钢轨听诊人,在... 转自:大众报业·齐鲁壹点齐鲁晚报·齐鲁壹点 徐宁 实习生 莫李凝夜幕降临,最后一班高铁载着旅客平安抵...
著名儿童文学作家周晴去世 经济观察网讯 据上海作家协会微信公众号5月5日消息,著名儿童文学作家、出版人、编审周晴因病医治无效,...
人民币汇率大涨,突破7.2!A... 截至5月5日10:31,离岸人民币对美元升破7.20关口,为去年11月以来首次,日内涨逾130点。另...
“五一”返程高峰来了!海南高速... “五一”假期就要结束了出门在外要返程的小伙伴们 注意啦 海南交警发布提示全省道路易拥堵路段以及事故多...
广交会观察:中国纺织服装业创新... 中新社广州5月5日电 (记者 蔡敏婕)“这条时尚连衣裙设计漂亮。你能看出来在这条连衣裙内,我还穿了一...
宁夏发布大风天气安全提示 中新网银川5月5日电 (记者 李佩珊)5月5日,宁夏各地出现大风天气。宁夏气象台5月5日9时30分升...
新研究实现对超快激光脉冲精确测...   新华社耶路撒冷5月5日电(记者王卓伦 陈君清)以色列研究人员日前在国际学术期刊《光:科学与应用》...