STM32CubeMX,定时器之定时功能,入门学习,如何设置prescaler,以及timer计算PWM输入捕获方法(重要)

频率变小,周期变长

1,参考链接(重要)

STM32CubeMX——定时器之定时功能(学习使用timer定时器的设置)
STM32测量PWM信息(学习使用设置pwm输入捕获)
通用定时器中两个重要参数的设置心得(TIM_Prescaler、TIM_Period)

2,视频学习

【STM32F030C8T6系列】5. 实验例程——PWM输入实验(重要)
这个视频的里面设置的有点问题:prescaler这里设置的有问题吧,应该是8000-1吧

3,我自己的设置:

在这里插入图片描述

计算的方式很多,我喜欢用这种计算方式,比较直接,当然可以选择下面两种计算方法,这三种计算方法分别在上面的参考链接里。
我的计算(8000/8000 000)*500=0.5s也就是20HZ,也就是支持500ms的周期,一般我们就按照计算的值来作为周期了。
如果我要100hz,也就是10次上报一次,这里不写500-1,写10-1了,也就是10ms,也就是100HZ,也就是我计算可以支持0-100HZ的pwm输入了。当然也可以通过修改预分频率的值。

1选择TIM2
2定时器时钟选择内部时钟
Clock Source(时钟来源)
计数器设置:
Prtscaler (定时器预分频系数) : 31999
Counter Mode(计数模式) : Up(向上计数模式)
Counter Period(自动重装载值) : 499
CKD(时钟分频因子) : No Division 不分频 (可以选择二分频和四分频 )
auto-reload-preload(自动重装载) : Enable 使能
定时器的定时周期
T = (psc+1)(arr+1)/Tclk
psc 为定时器预分频系数
arr为自动重装载值
Tclk为系统时钟频率
通过计算
T = (psc+1)(arr+1)/Tclk=(31999+1)(499+1)/32us=500ms
————————————————

4,其他设置案例详细说明:

A.案例1
主频72MHZ,最大计数次数5000,所以系统的最小采样频率是:2HZ,最大采样频率是72MHZ
一般为了方便中断,我们都是按照计数完成之后再触发,所以采样频率就是2hz,也就是500ms

//对于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
————————————————

B.案例2
在这里插入图片描述

72M的主时钟,7200分频后,单个计数时间是0.0001秒,最大计时长度是0.0001*65535=0.65535秒,所以最小频率不能小于1.5Hz。同时这个分频也影响你对频率测量的精度。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

吹响AI PC号角!微软在Windows中不断增加“Copilot含量”

2024,会是AI PC元年吗?至少微软正在往这个方向努力。 本周,微软开始在Windows中测试Copilot的“新体验”,其中包括任务栏中的Copilot图标,当用户复制文本或图片时,Copilot操作菜单就会自动出现。 有媒体在…

《CSS 简易速速上手小册》第5章:CSS 动画与过渡(2024 最新版)

文章目录 5.1 CSS 过渡基础:网页的微妙舞步5.1.1 基础知识5.1.2 重点案例:按钮悬停效果5.1.3 拓展案例 1:渐变显示导航菜单5.1.4 拓展案例 2:动态调整元素大小 5.2 关键帧动画:编排你的网页芭蕾5.2.1 基础知识5.2.2 重…

基于vue+node.js的校园跳蚤市场系统多商家

校园跳蚤市场系统可以在短时间内完成大量的数据处理、帮助用户快速的查找校园跳蚤市场相关信息,实现的效益更加直观。校园跳蚤市场系统中采用nodejs技术和mysql数据库。主要包括管理员、发布者和用户三大部分,主要功能是实现对个人中心、用户管理、发布者…

【MATLAB源码-第138期】基于matlab的D2D蜂窝通信仿真,对比启发式算法,最优化算法和随机算法的性能。

操作环境: MATLAB 2022a 1、算法描述 D2D蜂窝通信介绍 D2D蜂窝通信允许在同一蜂窝网络覆盖区域内的终端设备直接相互通信,而无需数据经过基站或网络核心部分转发。这种通信模式具有几个显著优点:首先,它可以显著降低通信延迟&…

大模型训练所需的硬件配置

1. 引入 训练一个大模型,到底需要投入多少块GPU,需要多少数据,训练多长时间能达到一个不错的效果? 本文引用靠谱的数据,来回答这些问题。 2. 全流程训练 大模型的训练,简单来说,分为Pretrain…

C#计算矩形面积:通过定义结构 vs 通过继承类

目录 一、涉及到的知识点 1、结构 2.结构和类的区别 3.继承 4.使用类继承提高程序的开发效率 二、实例:通过定义结构计算矩形面积 1.源码 2.生成效果 三、实例:通过继承类计算梯形面积 1.源码 2.生成效果 一、涉及到的知识点 1、结构 结构是…

git安装配置

1、下载安装 下载地址 2、配置git用户 git config --global user.name "yw" git config --global user.email "88888qq.com" 3、git init 初始化 4、生成ssh密钥 mkdir .ssh //创建文件夹cd .ssh //进入新建文件夹 ssh-keygen -t rsa // 输入密钥文…

推荐系统|召回05_矩阵补充、最近邻查找

文章目录 矩阵补充Matrix Completion模型结构模型训练模型存储 矩阵补充Matrix Completion 模型结构 通过用户ID和物品ID分别找到对应的向量,然后去做内积,内积的数值可以去衡量匹配的程度。 不共享参数的意思是指用户ID和物品ID使用不同的Embedding L…

LeetCode 144 二叉树的前序遍历

大家新年快乐,long年大吉 今天的题很简单,前序用栈就行。 电脑没拿,用我妈的pad艰难敲代码,敲字 知识点随便写点吧,这里基础点挺多,以后补充下 栈:先进后出,数据结构用stack&…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Blank组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Blank组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Blank组件 空白填充组件,在容器主轴方向上,空白填充组件具…

react中hook封装一个table组件 与 useColumns组件

目录 1:react中hook封装一个table组件依赖CommonTable / index.tsx使用组件效果 2:useColumns组件useColumns.tsx使用 1:react中hook封装一个table组件 依赖 cnpm i react-resizable --save cnpm i ahooks cnpm i --save-dev types/react-r…

前端JavaScript篇之对象创建的方式有哪些?

目录 对象创建的方式有哪些?1. 工厂模式:2. 构造函数模式:3. 原型模式:4. 混合模式:5. 动态原型模式:6. 寄生构造函数模式:7. 字面量方式: 对象创建的方式有哪些? JavaS…

elasticsearch增删改查

一、数据类型 1、字符串类型 (1)text (2)keyword 2、数值类型 (1)long、integer、short、byte、float、double 3、日期类型 (1)date 4、布尔类型 (1&#xff0…

【Dubbo源码二:Dubbo服务导出】

入口 Dubbo服务导出的入口:服务导出是在DubboBootstrapApplicationListener在监听到ApplicationContextEvent的ContextRefreshedEvent事件后,会触发dubboBootstrap.start(), 在这个方法中最后会导出Dubbo服务 DubboBootstrapApplicationListener Dub…

指针的学习3

目录 字符指针变量 数组指针变量 二维数组传参的本质 函数指针变量 函数指针变量的创建 函数指针变量的使用 两段有趣的代码 typedef关键字 函数指针数组 转移表 回调函数: 字符指针变量 int main() {char arr[10] "abcdef";char* p1 arr;//…

机器学习2---逻辑回归(基础准备)

逻辑回归是基于线性回归是直线分的也可以做多分类 ## 数学基础 import numpy as np np.pi # 三角函数 np.sin() np.cos() np.tan() # 指数 y3**x # 对数 np.log10(10) np.log2(2) np.e np.log(np.e) #ln(e)# 对数运算 # log(AB) log(A) logB np.log(3*4)np.log(3)np.log(4) #…

vue electron 应用在windows系统上以管理员权限打开应用

打开package.json文件,在build下的win增加配置 "requestedExecutionLevel": "requireAdministrator",

前端JavaScript篇之对闭包的理解

目录 对闭包的理解用途循环中使用闭包解决 var 定义函数的问题 对闭包的理解 闭包是指一个函数能够访问并操作其词法作用域(定义时所在的作用域)之外的变量的能力。它可以通过在一个函数内部创建另一个函数来实现。内部函数可以访问外部函数的局部变量、…

6.0 Zookeeper session 基本原理详解教程

客户端与服务端之间的连接是基于 TCP 长连接,client 端连接 server 端默认的 2181 端口,也就 是 session 会话。 从第一次连接建立开始,客户端开始会话的生命周期,客户端向服务端的ping包请求,每个会话都可以设置一个…

HTML5+CSS3+移动web——HTML 基础

目录 一、标签语法 HTML的基本框架 1. 标题标签 2. 段落标签 3. 换行和水平线 4. 文本格式化标签 5. 图像标签 6. 路径 相对路径 绝对路径 7. 超链接标签 8. 音频 9. 视频 10. 注释 二、标签结构 一、标签语法 HTML 超文本标记语言——HyperText Markup Langua…