如何实现Delay_us和Delay_ms延时(SysTick定时器)

SysTick定时器(System Tick Timer)是ARM Cortex-M内核中自带的一个24位递减计数器,通常用于产生系统节拍中断,为操作系统提供时基或用于一般性定时功能。它具有以下特点和用途:

一、SysTick的介绍

1. SysTick的主要用途(计时)

操作系统心跳时基:在实时操作系统(RTOS)中,SysTick通常用于产生周期性中断,作为系统节拍,触发任务切换和延时计时等功能。

精确延时:在裸机开发中,SysTick可用于实现精确延时,适合对时间敏感的应用场景。

通用计时器:在没有其他通用计时器的情况下,SysTick可以用作简单的通用定时器。

2. SysTick的工作原理

SysTick定时器是一个24位的递减计数器,在装载寄存器(LOAD寄存器)中设置初始计数值后,定时器以固定频率递减计数。当计数到零时会产生一次中断,并重新装载计数值,开始新一轮计时。

SysTick可以选择系统时钟(HCLK)或HCLK的1/8作为时钟源。

3. SysTick定时器的寄存器

CTRL(控制和状态寄存器:用于配置启用/禁用SysTick定时器、中断、时钟源选择等。

LOAD(装载寄存器:设置计数的初始值,定时器每次计数到0后会重新装载这个值。

VAL(当前计数值寄存器):显示当前剩余的计数值。

4. 与其他定时器的区别

与其他定时器的不同(物理上):通用、基本、高级定时器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值