最近才发现原来我把定时器里的配置参数代表的意义给搞混了,这里记录一下,防止以后自己忘记。

以建立一个定时1mS定时器为例:

1、先打开定时器

2、配置好时钟

3、配置定时器设置

重点来了,以前在这里我一直以为这里配置的就是时间,然后在调频率的时候,一直不对劲,知道查阅了硬石的资料才发现,这里配置的是进入定时器中断的频率,然后要定的时间要跟据这个频率来定时的。

由这个图可见,这里配置的是定时器产生中断的频率,然后再跟据频率与时间的关系推出定时的时间。

所以定时器频率为 f = 72M / Prescaler / Period = 72000 000 / 72 /1000 = 1000Hz;

定时时间T = 1 / f 则: 1s / 1000Hz = 1000 000us / 1000Hz = 1000us =1ms。

这样就可以定时1ms了啦,如果要做PWM频率调频,就直接改 pre 与 per 算出 f 就可以了。

具体公式如下图(上面的计算我是为了方便理解把公式逆运算了一次):

最后使用定时器中断跟关闭定时器中断以及回调函数即可, 使用中断的时候注意要先开启中断

HAL_TIM_Base_Start_IT(&htim1); //使用定时器的时候调用这个函数启动

HAL_TIM_Base_Stop_IT(&htim1); //停止定时器的时候调用这个函数关闭

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)

{

if(htim->Instance == TIM1)

{

//编写回调逻辑,即定时器1定时1MS后的逻辑

}

}

补充:最后记得生成STM32Cubemx文件时打开定时器中断,不然进不了回调函数,一般的话习惯用TIM3做定时器

基于STM32F030F4P9和STM32 CUBEMX 输出PWM波形

STM32F030F4P9定时器功能比较丰富,在此记录项目中使用其自动输出PWM波形(频率:50HZ).CubeMX配置定时器如下图说明. 在此定时器基础时钟为48MHZ,配置中不做分频处理,预分频系 ...

STM32 基于 CubeMX配置GPIO点亮LED灯(超级详细+图文并茂)

我是一个只会点灯的菜鸟: 相关文章 [STM32系列汇总]小白博主的STM32实战快速进阶之路(持续更新) 文章目录 相关文章 1 前言 2 理论分析 2.1 LED 原理 2.2 板载资料 2.3 ...

[stm32] STM32的通用定时器TIMx系统了解

通用定时器(TIMx) 一.TIMx简介 二.TIMx主要功能 三.TIMx功能描述 3.1 时基单元 3.2 计数器模式 3.3 时钟选择 3.4 捕获/比较通道 3.5 输入捕获模式 3.6 PW ...

STM32F407 使用HAL库延时微妙实现方法(附CubeMX配置过程)

STM32F407 使用HAL库延时微妙实现方法(STM32CubeMX配置) 作者 : 李剀出处 : https://www.cnblogs.com/kevin-nancy/p/10696681.h ...

STM32 TIM1高级定时器RCR重复计数器的理解

STM32 TIM1高级定时器RCR重复计数器的理解 TIMx_RCR重复计数器寄存器,重复计数器只支持高级定时器TIM1和TIM8,下面看标准外设库的TIM结构体的封装: typedef struc ...

STM32学习笔记——定时器中断(向原子哥学习)

定时器中断 STM32 的定时器功能十分强大,有 TIME1 和 TIME8 等高级定时器,也有 TIME2~TIME5 等通用定时器,还有 TIME6 和TIME7 等基本定时器.在本章中,我们将利 ...

STM32精确延迟1us和1ms的函数

STM32精确延迟1us和1ms的函数 延迟1us: /************************************************************************ ...

Stm32之通用定时器复习

因为毕业设计要用到PWM调光很久都没用到Stm32的定时器,有些内容已经遗忘,为了回顾复习相关内容今天开下通用定时器这一章节的数据手册. 1.时钟 通用定时器一般是TIM2~TIM5,TIM1.TIM ...

实现定时器定时 1 秒钟,LED 亮灭显示

实现定时器定时 1 秒钟,LED 亮灭显示 要求 每隔一秒钟,实现LED灯的显隐转换 实验代码 /*************************************************** ...

随机推荐

求单链表L各结点的阶乘之和(c语言)

链表需要用到指针 阶乘需要用到递归 链表中的注意事项: 1.链表L是否等于NULL ----------是循环结束的条件 2.链表L->Data ---------取链表L中各个结点的值 3.L ...

【leetcode】Longest Consecutive Sequence

Longest Consecutive Sequence Given an unsorted array of integers, find the length of the longest con ...

windows下Qt Creator5.1.0编写程序以及调用OpenCV库

系统说明 最近使用opencv编写程序,程序编的差不多就学习使用QT加个界面,首先声明下本人的系统和使用的软件版本, 系统: windows xp QT IDE:QT Creator5.1.0 Ope ...

linux 下source、sh、bash、./执行脚本的区别

c语言定时器定时1ms程序,STM32 Cubemx 配置定时器定时1mS相关推荐

  1. STM32 CubeMX配置ADC+DMA进行FFT(1)

    STM32 CubeMX配置ADC+DMA,计算采样率和ADC电压 原创:睿智嵌入式 最近,因为项目需要处理音频信号,对AD采集的音频信号进行FFT运算,记录一下学习过程. 主要内容: 1.ADC和D ...

  2. STM32 CubeMx(二)定时器中断和PWM呼吸灯

    STM32 CubeMx(一)时钟树配置与GPIO输入输出 文章目录 1.定时器 1.1 定时器概念 1.2 定时器分类 1.3 定时器功能 1.4 配置过程和编写代码 1.5 代码分享 2.PWM产 ...

  3. stm32+cubemx+adc+time定时采集+dma多通道采集

    cubemx中的时钟及下载方式配置忽略,不了解的道友可以看我其他博客进行配置 打开cubemx中的adc打开4个通道 打开dma并配置 adc配置如下 要注意打开扫描模式及dma,还有ADC模式中的通 ...

  4. stm32 CubeMX配置按键开关灯

    文章目录 前言 一.CubeMX配置 二.代码解析 总结 前言 本篇文章主要带大家学习如何使用按键进行开关灯的操作. 一.CubeMX配置 cubeMX配置大家可以参考下面文章,这里我只讲需要添加的地 ...

  5. STM32:配置定时器为PWM输出模式以及编码器接口模式

    一:STM32的高级定时器TIM8配置为PWM输出模式 最近在工程项目中,需要用stm32的定时器 (以高级定时器TIM8为例 ) 产生两路PWM输出,作为电机的pwm输入,方法如下: /****** ...

  6. java 定时器 的中断程序,STM32定时器中断

    我试图在STM32L073中使用定时器外设但我有问题 . 我在STM32Cube中生成了设置代码,并且只使用了HAL API提供的函数 . 问题是定时器中断只发生一次,它应该始终发生溢出 . 我不知道 ...

  7. STM32 CubeMX 1ms定时中断的实现

    一.来由 近来,要用到RS485转CAN2.0B协议,其中要求8ms发一级CAN包,100ms又发另一组CAN包,500ms还想让led闪烁,表示程序正常运行.因为刚用STM32F042,不熟悉,只能 ...

  8. 嵌入式STM32入门之定时器控制LED闪烁与产生PWM脉冲宽度调制信号

    定时器控制LED闪烁与产生PWM脉冲宽度调制信号 一.前言 二.定时器基本介绍 (一)STM32定时器 (二)通用定时器主要功能 (三)计数器模式 (四)定时器工作原理 三.实验(1)初识定时器 (一 ...

  9. STM32 cubeMX下配置STM32单片机使无源蜂鸣器输出PWM波并放音乐

    1.首先我们要了解定时器(timer) timer分为三种:高级定时器(tim1,tim8),基本定时器(tim6,tim7),通用定时器(tim2,tim3,tim4,tim5). 基本定时器:它有 ...

最新文章

  1. 全文翻译(四) TVM An Automated End-to-End Optimizing Compiler
  2. Octave添加搜索路径
  3. go string 转 uint64_如何优雅的使用Go接口?
  4. 编辑器笔记——sublime text3 编译sass
  5. c++服务器笔试题编程_C++服务器开发面试题
  6. 神经网络arm neon加速实现
  7. 稳压二极管的原理和伏安特性
  8. 开博第一天,在日本做开发的日子(生活-吃货篇)
  9. html页面在线预览PDF文件
  10. html+js 简单静态网页设计
  11. 【深度强化学习】交叉熵方法
  12. greenplum如何删除segment节点
  13. 专业精神-希波克拉底的誓言(转载)
  14. 2惠普暗影精灵恢复出厂设置
  15. 禅道开源版16.2,解决LDAP插件无法使用的问题
  16. USB驱动——键盘,U盘
  17. 60GHz通信标准简介
  18. (轉貼) 大年三十整理的asp.net资料! (.NET) (ASP.NET)
  19. 轻松玩转iPhone 3GS(第三版)
  20. 数据库的几种去重方法

热门文章

  1. 《迅雷链精品课》第十五课:共识算法的性能问题
  2. 啊哈添柴挑战Java1080. 请告诉我谁小?
  3. windows XP全公略
  4. html禁止双击选中文本,CSS阻止页面双击选中文本
  5. OKR如何与绩效考核并行?
  6. Java-好玩的猜数小游戏
  7. STM32F103C8t6烧录问题
  8. Origin画图技巧之设置框图默认设置
  9. 单元测试 CI/CD
  10. 用什么软件测试电视盒子真假,几十款电视盒子软件,只挑出6款神作,可消除一切看视频的阻碍!...