Cortex-M SysTick

本文介绍了Cortex-M3的SysTick,它是一个24位硬件计数器,用于产生SYSTICK异常和中断,常用于操作系统调度和精确延时。SysTick在芯片睡眠状态下仍能工作,并以STM32为例详细讲解了其寄存器配置和使用方法。
摘要由CSDN通过智能技术生成

简介

SysTick 捆绑在NVIC(嵌套向量中断控制器)中,用于产生SYSTICK异常和中断,一般用于为OS(操作系统)的系统调度提供时间片切割,也可用于构建精确的延时函数,时间精度取决于时钟源的选择,外部晶振提供的时钟源远高于IC内部设计的时钟源。

SysTick实质为一个24位的硬件计数器,计数结束产生硬件中断通知上层,可工作在芯片睡眠状态下。

Cortex-M3芯片架构,其它ARM内核处理器此处类似。
Cortex-M3芯片架构

寄存器

以STM32为例,SysTick有4个寄存器用于配置,分别为

typedef struct
{
	__IO uint32_t CTRL;   /*!< Offset: 0x00  SysTick Control and Status Register */
	__IO uint32_t LOAD;   /*!< Offset: 0x04  SysTick Reload Value Register       */
	__IO uint32_t VAL;    /*!< Offset: 0x08  SysTick Current Value Register      */
	__I  uint32_t CALIB;  /*!< Offset: 0x0C  SysTick Calibration Register        */
} SysTick_Type;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值