当前位置: 首页 > news >正文

STM32定时器的死区时间(DTR)如何计算

一、STM32F051为例

讲解死区时间(DTR)如何计算,TIM1的时钟频率配置的是48M

二、时钟分频因子

我的环境时钟分频因子的值是 00,所以

tDTS = tCK_INT=1000 000 000ns/48 000 000=20.8333ns

三、用户手册中的样例理解

Tdtg=步长时间=n x TDTS

如果定时器时钟为8M,并且CKD=00,TDTS=1000 000 000ns/8 000 000=125ns

DTG[7:0]  =   [0~127]       => DTG[7:5]=0xx => 死区 = [0~127]*125ns = [0~15875]ns

DTG[7:0]  =   [128~191]   => DTG[7:5]=10x => 死区 =(64+[0~63])*(125ns*2)=[16000~31750]ns

DTG[7:0]  =   [192~223]   => DTG[7:5]=11x => 死区 =(32+[0~31])*(125ns*8)=[32~63]us

DTG[7:0]  =   [224~255]   => DTG[7:5]=111 => 死区 =(32+[0~31])*(125ns*16)=[64~126]us

四、STM32F051寄存器和波形对比

我的环境时钟分频因子的值是 00,所以

tDTS = tCK_INT=1000 000 000ns/48 000 000=20.8333ns

例子1

DTG=0x2D=45   [0~127]

死区=45*20.8333ns=937.49ns

例子2

DTG=0x96=150   [128~191]

死区=[64+22]*20.8333ns*2=3583.32ns=3.583us

http://www.xdnf.cn/news/697447.html

相关文章:

  • Cancer Cell|从临床病例到AI空间组学 | 空间生物标志物如何精准预测HER2阳性乳腺癌ADC疗效?
  • 瑞数6代jsvmp简单分析(天津电子税x局)
  • B2146 Hermite 多项式
  • 15.为什么HashMap的容量是2的幂次方
  • 编译与链接,咕咕咕
  • 2.2 C++之循环结构
  • 弧度 = 弧长与半径的比值
  • Vitrual Studio调试windows应用程序如何打开控制台
  • 算法-背包问题
  • 火热邀测!DataWorks数据集成支持大模型AI处理
  • 让DeepSeek去除AI痕迹的指令
  • 数据库管理:探寻高效之路
  • webpack打包基本配置
  • 图像融合质量评价指标
  • cmake学习day01
  • [CARLA系列--03]如何打包生成CARLA 0.9.15的非编辑版(地图的加载与卸载)
  • NW845NW850美光闪存颗粒NW883NW889
  • 把数据库做得能扩展:Aurora DSQL 的故事
  • AxumStatusCode细化Rust Web标准格式响应
  • 配置vscode中java.configuration.runtimes
  • Java设计模式之命令模式详解
  • XJTU-SY轴承振动数据集的json自封装
  • 深度学习论文: FastVLM: Efficient Vision Encoding for Vision Language Models
  • Test-Time Zero-Shot Temporal Action Localization
  • 操作系统导论 第38章:廉价冗余磁盘阵列(RAID)
  • 【C/C++】delete nullptr;
  • android系统framework的几个新面试题目(涉及binder,input,SurfaceFlinger带答案)
  • Tomcat运行比较卡顿进行参数调优
  • 案例解读 | 某外资在华汽车系统企业综合运维平台建设实践
  • Java消息队列应用:Kafka、RabbitMQ选择与优化