【蓝桥杯嵌入式】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秒。


相关文章
|
5月前
|
搜索推荐 UED Python
实现一个带有昼夜背景切换的动态时钟:从代码到功能解析
本文介绍了一个使用Python和Tkinter库实现的动态时钟程序,具有昼夜背景切换、指针颜色随机变化及整点和半点报时功能。通过设置不同的背景颜色和随机变换指针颜色,增强视觉吸引力;利用多线程技术确保音频播放不影响主程序运行。该程序结合了Tkinter、Pygame、Pytz等库,提供了一个美观且实用的时间显示工具。欢迎点赞、关注、转发、收藏!
224 94
|
11月前
|
传感器 编解码 API
【STM32开发入门】温湿度监测系统实战:SPI LCD显示、HAL库应用、GPIO配置、UART中断接收、ADC采集与串口通信全解析
SPI(Serial Peripheral Interface)是一种同步串行通信接口,常用于微控制器与外围设备间的数据传输。SPI LCD是指使用SPI接口与微控制器通信的液晶显示屏。这类LCD通常具有较少的引脚(通常4个:MISO、MOSI、SCK和SS),因此在引脚资源有限的系统中非常有用。通过SPI协议,微控制器可以向LCD发送命令和数据,控制显示内容和模式。
380 0
|
缓存 网络协议 算法
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
|
监控 Linux 编译器
Linux C++ 定时器任务接口深度解析: 从理论到实践
Linux C++ 定时器任务接口深度解析: 从理论到实践
328 2
蓝桥杯嵌入式第十一届(第一场)省赛
蓝桥杯嵌入式第十一届(第一场)省赛
319 1
蓝桥杯嵌入式第十二届省赛
蓝桥杯嵌入式第十二届省赛
253 0
蓝桥杯嵌入式第十一届(第二场)省赛
蓝桥杯嵌入式第十一届(第二场)省赛
273 0
|
芯片
蓝桥杯嵌入式创建第一个工程(点亮led灯)
蓝桥杯嵌入式创建第一个工程(点亮led灯)
261 0

推荐镜像

更多
  • DNS