c语言定时器定时1ms程序,STM32 Cubemx 配置定时器定时1mS
最近才发现原来我把定时器里的配置参数代表的意义给搞混了,这里记录一下,防止以后自己忘记。
以建立一个定时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相关推荐
- STM32 CubeMX配置ADC+DMA进行FFT(1)
STM32 CubeMX配置ADC+DMA,计算采样率和ADC电压 原创:睿智嵌入式 最近,因为项目需要处理音频信号,对AD采集的音频信号进行FFT运算,记录一下学习过程. 主要内容: 1.ADC和D ...
- STM32 CubeMx(二)定时器中断和PWM呼吸灯
STM32 CubeMx(一)时钟树配置与GPIO输入输出 文章目录 1.定时器 1.1 定时器概念 1.2 定时器分类 1.3 定时器功能 1.4 配置过程和编写代码 1.5 代码分享 2.PWM产 ...
- stm32+cubemx+adc+time定时采集+dma多通道采集
cubemx中的时钟及下载方式配置忽略,不了解的道友可以看我其他博客进行配置 打开cubemx中的adc打开4个通道 打开dma并配置 adc配置如下 要注意打开扫描模式及dma,还有ADC模式中的通 ...
- stm32 CubeMX配置按键开关灯
文章目录 前言 一.CubeMX配置 二.代码解析 总结 前言 本篇文章主要带大家学习如何使用按键进行开关灯的操作. 一.CubeMX配置 cubeMX配置大家可以参考下面文章,这里我只讲需要添加的地 ...
- STM32:配置定时器为PWM输出模式以及编码器接口模式
一:STM32的高级定时器TIM8配置为PWM输出模式 最近在工程项目中,需要用stm32的定时器 (以高级定时器TIM8为例 ) 产生两路PWM输出,作为电机的pwm输入,方法如下: /****** ...
- java 定时器 的中断程序,STM32定时器中断
我试图在STM32L073中使用定时器外设但我有问题 . 我在STM32Cube中生成了设置代码,并且只使用了HAL API提供的函数 . 问题是定时器中断只发生一次,它应该始终发生溢出 . 我不知道 ...
- STM32 CubeMX 1ms定时中断的实现
一.来由 近来,要用到RS485转CAN2.0B协议,其中要求8ms发一级CAN包,100ms又发另一组CAN包,500ms还想让led闪烁,表示程序正常运行.因为刚用STM32F042,不熟悉,只能 ...
- 嵌入式STM32入门之定时器控制LED闪烁与产生PWM脉冲宽度调制信号
定时器控制LED闪烁与产生PWM脉冲宽度调制信号 一.前言 二.定时器基本介绍 (一)STM32定时器 (二)通用定时器主要功能 (三)计数器模式 (四)定时器工作原理 三.实验(1)初识定时器 (一 ...
- STM32 cubeMX下配置STM32单片机使无源蜂鸣器输出PWM波并放音乐
1.首先我们要了解定时器(timer) timer分为三种:高级定时器(tim1,tim8),基本定时器(tim6,tim7),通用定时器(tim2,tim3,tim4,tim5). 基本定时器:它有 ...
最新文章
- 全文翻译(四) TVM An Automated End-to-End Optimizing Compiler
- Octave添加搜索路径
- go string 转 uint64_如何优雅的使用Go接口?
- 编辑器笔记——sublime text3 编译sass
- c++服务器笔试题编程_C++服务器开发面试题
- 神经网络arm neon加速实现
- 稳压二极管的原理和伏安特性
- 开博第一天,在日本做开发的日子(生活-吃货篇)
- html页面在线预览PDF文件
- html+js 简单静态网页设计
- 【深度强化学习】交叉熵方法
- greenplum如何删除segment节点
- 专业精神-希波克拉底的誓言(转载)
- 2惠普暗影精灵恢复出厂设置
- 禅道开源版16.2,解决LDAP插件无法使用的问题
- USB驱动——键盘,U盘
- 60GHz通信标准简介
- (轉貼) 大年三十整理的asp.net资料! (.NET) (ASP.NET)
- 轻松玩转iPhone 3GS(第三版)
- 数据库的几种去重方法