ucos2历程——SysTick寄存器

本文介绍SysTick定时器的四个控制与状态寄存器及其作用,并重点讲解了通过SysTick_CTRL和SysTick_LOAD寄存器实现简单延时的方法。文中还提供了设置1毫秒延时的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SysTick寄存器一共由四个

控制与状态寄存器:SysTick_CTRL

重装值寄存器:SysTick_LOAD

当前值寄存器:SysTick_VAL

校准寄存器:SysTick_CALRB

简单的延时只用到两个寄存器SysTick_CTRL、SysTick_LOAD


1.控制状态寄存器:SysTick_CTRL


其中第16位为状态标志,当从上次重装开始减到0,则该位被置1,且被读取后自动清零。

CLKSOURCE=1 使用内部时钟,=0 使用外部参考时钟。

TICKINT=1 向下计数到0时会导致SysTick处理器挂起。=0 不会挂起且软件可以使用CLKSOURCE

判断计时是否到0。

ENABLE=1 开启计数器工作连拍模式,=0禁止计数器。

SysTick_LOAD:则是用于装载最大24位的数值。

简单一毫秒设置如下:

 

STM32寄存器学习笔记篇——SysTick寄存器设置

 

理论上是1ms延时是  72000*time  才对,用示波器测的是7990*time  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值