SYSTICK、RCC应用

SYSTICK简述:

SYSTICK(系统定时器)是ARM Cortex-M系列处理器内置的一个24位递减计数器,通常用于操作系统的时间基准或简单的定时任务。

主要功能

  • 周期性中断:以固定时间间隔触发中断,适用于实时操作系统(RTOS)的时钟节拍。
  • 精确延时:通过轮询计数器状态实现微秒级或毫秒级延时。
  • 低功耗设计:作为内核外设,运行时无需依赖其他模块,适合低功耗场景。

寄存器组成

SYSTICK包含4个关键寄存器:

  1. CTRL(控制寄存器):配置时钟源(内核时钟或分频后时钟)、使能中断及计数器。
  2. LOAD(重载寄存器):设置计数器初始值,决定定时周期。
  3. VAL(当前值寄存器):读取或清零当前计数值。
  4. CALIB(校准寄存器):提供出厂校准值,通常用于补偿时钟偏差。
周期计算公式

SYSTICK的定时周期由重装载值(LOAD寄存器)和时钟频率决定。公式如下:

T_{周期} = \\frac{LOAD + 1}{f_{时钟}}

其中:

  • ( T_{周期} ):单个计数周期的时间(单位:秒)。
  • ( LOAD ):重装载值(24位寄存器,最大值16,777,215)。
  • ( f_{时钟} ):所选时钟源的频率(Hz)。
示例计算
配置步骤
  1. 选择时钟源:通过SysTick->CTRL设置CLKSOURCE位。
  2. 设置重装载值:写入SysTick->LOAD寄存器(需减1,如1ms周期对应71,999)。
  3. 清空当前值:将SysTick->VAL寄存器写0。
  4. 启动定时器:设置SysTick->CTRLENABLE位。

操作功能简述:

使用:在stm32cubemx中配置后无需在编写代码进行数据修改;相关代码文件自动生成。

RCC简述:

RCC(Reset and Clock Control)是STM32微控制器中管理时钟和复位的关键模块。其寄存器用于配置系统时钟源、分频系数、外设时钟使能等。时钟中断相关功能通常通过RCC的中断标志位和中断控制寄存器实现。

相关寄存器及功能

RCC_CIR(Clock Interrupt Register)

该寄存器用于处理时钟相关的中断和标志位,主要包含以下功能:

  • 中断标志位:如HSI就绪中断(HSIRDYF)、HSE就绪中断(HSERDYF)、PLL就绪中断(PLLRDYF)等。
  • 中断清除位:通过写1清除相应的中断标志(如HSIRDYF对应HSIRDYC)。
  • 中断使能位:控制是否允许特定时钟事件触发中断(如HSIRDYIE、HSERDYIE)。

典型中断触发场景

  • HSE(外部高速时钟)就绪时触发HSERDYF标志。
  • PLL(锁相环)锁定后触发PLLRDYF标志。
  • LSE(外部低速时钟)失效时触发LSECSSF标志(需配置CSS功能)。
  • 时钟偏斜(Clock Skew):同一时钟信号到达不同寄存器的时序差异,需最小化以避免时序冲突。
  • 时钟延迟(Clock Latency):从时钟源到终端的传播时间,需优化以降低总周期时间。
  • 功耗:时钟网络可能占芯片总功耗的30%-40%,需通过缓冲器优化和门控技术降低。

简述大概功能就是通过这里可以选择代码运行的优先级(先后顺序);以及后面中断回调函数的功能实现。

今日任务:

  1. 利用系统滴答定时器进行按键扫描;
  2. 在实验五的基础上,切换不同的时钟源(HSE/HSI),更改时钟频率,观察实验现象有何不同;

本实验可以直接在上篇文章代码下通过改变时钟频率观察现象:

课后思考:系统滴答定时器的那个位置为1;系统滴答定时器才能正常使用?

相关推荐
恒锐丰科技韩生6 分钟前
率能 SS6226|2.4~7.2V 低压双通道双 H 桥电机驱动 SOP16 玩具小家电专用芯片
嵌入式硬件·硬件工程
Dr.kangder2 小时前
嵌入式面试总结(十九)——内存泄露
单片机·算法·面试·职场和发展·架构·硬件架构
萌新小白YXY4 小时前
SAE J1587/SAE J1708 协议笔记
笔记·单片机·嵌入式硬件
恒锐丰科技韩生4 小时前
率能 SS6635E|3.0~30V 直流双向 H 桥电机驱动 SOP8 玩具电子锁机器人分享
嵌入式硬件·硬件工程
嘉子的秃头日记4 小时前
机械革命“自动修复”无法修复你的电脑
stm32·单片机·电脑
恒锐丰科技林技术员4 小时前
高集成双通道 H 桥驱动芯片 SS6850H:低压直流电机驱动优选方案
嵌入式硬件·硬件工程
森旺电子4 小时前
电子负载使用介绍
单片机·嵌入式硬件
hsjiasb14 小时前
FreeRTOS学习(二十六)——动态内存管理heap_1到heap_5
stm32·单片机·学习·学习笔记·freertos
周洲083018 小时前
STM32 GPIO 外部中断深度解析:边沿触发 / 电平触发、NVIC 优先级配置、中断嵌套实战
stm32·单片机·嵌入式硬件
LCG元19 小时前
STM32F103 CAN 总线通信实战:标准库双机通信与过滤器配置精讲
stm32·单片机·嵌入式硬件