STM32 定时器定时计算

news2024/11/30 8:47:43

STM32 定时器定时计算

  • STM32 定时器频率
  • 例子
  • 公式
  • reference

STM32 定时器频率

在这里插入图片描述
定时时间 = 定时器频率 / 倍频 /装载周期

  htim1.Init.Prescaler = 72-1;
  htim1.Init.CounterMode = TIM_COUNTERMODE_UP;
  htim1.Init.Period = 1*1000*1000;

tim = 72x10^6 / (72-1)/ 110001000 = 1us

根据定时器时钟的频率,比如时钟的频率是72MHZ,可以理解为一秒钟STM32会自己数72M次,预分频系数就是将频率分割,比如分频系数是72,则该时钟的频率会变成72MHZ/72=1MHZ,但是在设置的时候要注意,数值应该是72-1。假定分频系数是72-1,那么频率变成1MHZ,也就意味着STM32在一秒钟会数1M次,即1us数一次。好了,接下来就是确定预装载值,比如需要定时1ms,由于1ms=1us*1000,那么预装载值就是1000-1;如此类推,在预分频系数确定的情况下,定时的时长就由预装载值确定了。至于要把值减一的原因,估计是计数是从0开始,所以要减一。

例子

//对于71MHZ的频率,500ms中断一次,这两个参数设置如下:
TIM_Prescaler=7199;   //预分频值
TIM_Period=4999;    //下一个更新事件装入活动的自动重装载寄存器周期的值

   //分频7200,用72000000/7200=10000Hz
   //此时的周期就是1/10000=0.0001s
   //500ms=0.0001s*5000次
   //5000-1=4999次
   //即通过4999次系统的运行,就是500ms

公式

对定时器周期公式的理解:

T=(arr+1*(PSC+1)/Tck  

其中TCK为时钟频率,PSC为时钟预分频系数,arr为自动重装载值。

f=Tck/(psc+1)*(arr+1)

Tck/(psc+1)即为时钟频率,1/f为机器周期,乘以(arr+1)即可得出定时器周期。
例子:TCK=72MHZ,psc=71.时钟周期=1us.(arr+1)值为多少,定时器周期就为多少毫秒。

reference

  • 通用定时器中两个重要参数的设置心得(TIM_Prescaler、TIM_Period)

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

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

相关文章

RAC/RAC One Node 修改私网/心跳网卡名

cDAS RAC/RAC One Node一般采用ib ip作为私网/心跳ip,有些现场可能会有修改心跳/私网网卡的需求,一般修改网卡也会伴随修改心跳/私网ip的需求。若心跳/私网有高可用,可以一个个修改。 场景1:心跳网卡有高可用 原心跳网卡名 原心…

Vue中 引入使用 localforage 改进本地离线存储(突破5M限制)

1. 简介 说到本地存储数据,首先想到的是 localStorage,应该很多小伙伴都用过,使用很简单。然而,localStorage 却有下面一些缺点: 存储容量限制,大部分浏览器应该最多5M。我就遇到过localStorage存储字符然…

H264码流中SPS PPS详解

1 SPS和PPS从何处而来? 2 SPS和PPS中的每个参数起什么作用? 3 如何解析SDP中包含的H.264的SPS和PPS串? 1 客户端抓包 在做客户端视频解码时,一般都会使用Wireshark抓包工具对接收的H264码流进行分析,如下所示&…

Transform+ASM插桩系列(3)——Transform+ASM的实战

回顾 在上一章讲到创建完buildSrc之后,实现了项目的plugin之后,就可以在plugin注册我们的Transform。这期文章将正式进入重头戏,今天的学习内容有【认识Transform】、【认识AMS】、【插桩实战】 前言 插桩的技巧中,我们要知道 …

Python实现LDA和KNN人脸识别模型(LinearDiscriminantAnalysis和KNeighborsClassifier算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含…

【2021-TITS】Deep Learning in Lane Marking Detection: A Survey

概述 回顾了针对路面标线的深度学习算法,主要分析了他们的网络架构及优化目标;此外还总结了现有车道标线相关的数据集,评价基准及常见的数据处理技术 PaperCode 总结 创新点: 1.总结深度学习网络架构、优化目标2.总结了相关现有…

使用Portman、Postman和Newman自动化API测试

几个月前我换了工作和公司,很喜欢这样的变化,但多少会有些不知所措。现在事情已经安排好了一些,我可以回来做一些我喜欢的事情。 现在正在工作的团队是一个新团队,我们正在努力弄清楚我们的流程,并试图尽可能地实现自…

编译原理实验一:源程序的预处理及词法分析程序的设计与实现(python)

实验目的 设计并实现一个包含预处理功能的词法分析程序,加深对编译中词法分析过程的理解。 实验要求 1、实现预处理功能 源程序中可能包含有对程序执行无意义的符号,要求将其剔除。 首先编制一个源程序的输入过程,从键盘、文件或文本框输…

[附源码]java毕业设计校园拓展活动管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

论文阅读之Dynamic Routing Between Capsules(2017)

文章目录前言capsule network参考前言 capsule network 可以简单理解为将神经网络的标量计算,赋予了方向,变换成了向量进行计算。 标量只有大小之分。 向量不仅有大小,还有方向之分。 应该可以略微感受到这种思路的魔力了。 capsule 主要是…

IB历史备考,如何拿高分?

邻近期末考,大伙儿是不是十分焦虑不安呢?大家的老师经常发觉学生们本来知识要点都把握得挺不错的,但每到考試便是拿不上满意的考试成绩,让人十分郁闷!因此应对那样的难点,大家的IB历史时间评委为大伙儿筹备…

行业分析| 智慧消防对讲

消防工程关系国计民生,关系到每个公民的人身和财产安全,在每个场所的建设中,消防工程建设是必不可少的一个板块,包括消防应急通道建设和应急设备建设两个方面。其中消防系统设备建设主要分为九大系统的建设:消防水系统…

VectorCAST测试工具环境搭建

**目的:**本文提供VectorCAST使用的实际操作方法,以便项目可以很好的使用VectorCAST工具。 适用范围:VectorCAST是一个专门针对嵌入式软件的C/C代码进行单元测试的工具,它可以自动生成测试用例、评估测试结果并生成测试报告。 **工…

十年来高薪专业变成了它——信息安全

“什么专业好就业?” “什么专业以后赚的钱多?” 确实,专业对应的行业薪资各有不同,选对了专业赢在起跑线也不是没有可能! 麦可思机构分析了近十年大学生就业数据情况,发现从2011年到2020年的大学毕业生高…

Windows简单安装redis

1.去git下载 或者去搜点资源,windows下载是压缩包,找个目录解压进去。 Github下载地址:https://github.com/MicrosoftArchive/redis/releases 2.打开cmd 尝试启动 比如我放在d盘soft下面,windows你直接打开cmd,输入d…

Baklib知识分享|文档生命周期:确保您的文档产出效率

一个多世纪以来,文档一直是任何产品或服务的支柱。它是用户在使用您的产品、应用程序、网站或其他软件服务时所引用的内容。但在现代,随着大多数帮助或支持文档从传统形式转移到数字形式,对效率的需求比以往任何时候都更加明显。此外&#xf…

[附源码]SSM计算机毕业设计基于javaweb电影购票系统JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【Shell 脚本速成】01、编程语言与 Shell 脚本介绍

目录 一、编程语言介绍 二、shell介绍 1、shell介绍 2、bash shell基本特性 2.1 命令和文件自动补全 2.2 常见的快捷键 3、shell脚本介绍 准确来说: 3.1 案例演示 3.2 什么时候用到脚本? 4、shell脚本语法 4.1 shell脚本组成 4.2 脚本文件命…

Spring事务配置(案例:转账业务追加日志,事务传播行为)

目录 Spring事务配置 案例 事务传播行为 代码实现: 1.文件大致格式: 2.ServiceAdvise(AOP功能包) 3.JdbcConfig(jdbc配置文件,包含了事务管理器) 4.MybatisConfig(mybatis配置…

Unity技术手册-UGUI零基础详细教程-ScrollBar和ScrollView

往期文章分享点击跳转>《导航贴》- Unity手册,系统实战学习点击跳转>《导航贴》- Android手册,重温移动开发 本文约8千字,新手阅读需要20分钟,复习需要12分钟 【收藏随时查阅不再迷路】 👉关于作者 众所周知&…