【蓝桥杯嵌入式】STM32定时器的配置,解析预分频系数和重装载值与时钟频率的关系

简介: 【蓝桥杯嵌入式】STM32定时器的配置,解析预分频系数和重装载值与时钟频率的关系

目录


预分频系数

重装载值  

设置STM32CubeMX


正文


预分频系数


   预分频系数就是将你使用的时钟的频率以预分频系数为单位分割,如现在使用的是80MHz频率的时钟,预分频系数设置为80,那就是将原本的80次计数看成是1次,时钟的频率因为变成了 80M/80 = 1MHz。也就是改定时器再一秒内会计数1M次。


重装载值  


       重装载值就是当定时器的计算器计数到这个值之后,就会发生溢出,产生中断,然后重新装载为0。我们继续以上面例子为例,时钟频率为80MHz,预分频系数为80,假设我们需要定时10毫秒,现在是定时器是每秒计数1M次,也就是说一微秒计数一次,我们要定10毫秒,也就是10000微秒,即计算器从0计数到10000就是10毫秒,所以我们就将重装载值定为10000。

 特别注意:以上的预分频系数设置为80,重装载值设置为10000都是为了讲解方便,但是数值都是错误的,需要设置为80-110000-1才是正确的。因为都是从0开始计数,也就是0~(80-1)才是80个数,10000-1同理。


设置STM32CubeMX


打开软件后,先在Clock Configuration中将以下紫框中需要更改的完成更改,时钟频率为80HMz。

选择一个定时器,选择内部时钟,我们设置一个定时要求是0.01秒的定时器:

预分频系数设置为80-1,重装载值设置为10000-1,时钟频率为80HMz,80M/80/10000 = 100;

也就是每一秒钟产生100次中断,每次时间间隔为0.01秒。


相关文章
|
1月前
|
算法
基于STM32定时器外部计数模式实现方波频率测量
基于STM32定时器外部计数模式实现方波频率测量
|
传感器
stm32f407探索者开发板(二十二)——通用定时器基本原理讲解
stm32f407探索者开发板(二十二)——通用定时器基本原理讲解
1541 0
stm32f407探索者开发板(十七)——串口寄存器库函数配置方法
stm32f407探索者开发板(十七)——串口寄存器库函数配置方法
1768 0
|
芯片
stm32f407探索者开发板(十二)——Systick滴答定时器-延时函数讲解
stm32f407探索者开发板(十二)——Systick滴答定时器-延时函数讲解
1326 0
|
设计模式 存储 算法
PHP中的设计模式:策略模式的深入解析与应用在软件开发的浩瀚海洋中,PHP以其独特的魅力和强大的功能吸引了无数开发者。作为一门历史悠久且广泛应用的编程语言,PHP不仅拥有丰富的内置函数和扩展库,还支持面向对象编程(OOP),为开发者提供了灵活而强大的工具集。在PHP的众多特性中,设计模式的应用尤为引人注目,它们如同精雕细琢的宝石,镶嵌在代码的肌理之中,让程序更加优雅、高效且易于维护。今天,我们就来深入探讨PHP中使用频率颇高的一种设计模式——策略模式。
本文旨在深入探讨PHP中的策略模式,从定义到实现,再到应用场景,全面剖析其在PHP编程中的应用价值。策略模式作为一种行为型设计模式,允许在运行时根据不同情况选择不同的算法或行为,极大地提高了代码的灵活性和可维护性。通过实例分析,本文将展示如何在PHP项目中有效利用策略模式来解决实际问题,并提升代码质量。
|
数据安全/隐私保护
STM32F103C8T6实现简易密码锁(CubeMax配置)(一),Oled显示。
项目功能:实现设置密码,登陆密码,后期还可以通过E2PROM实现掉电不丢失数据。通过Oled的显示去判断我们是否设置或者登陆成功。
506 1
深入解析802.11g标准及其频率范围
【8月更文挑战第24天】
592 0
|
前端开发 JavaScript 算法
React.useState 的更新频率及原因解析
【8月更文挑战第24天】
338 0
STM32CubeMX 定时器
STM32CubeMX 定时器
627 0

推荐镜像

更多
  • DNS