stm32 SysTick定时器LED
2017-08-18 00:00
489 查看
SysTick定时器是一个24位向下计数器的内核外设,每计数一次耗时1/SYSCLK,当重装载寄存器的值减到0时,系统定时器产生中断。
SysTick寄存器:(参考CM3权威指南)
CTRL 控制及状态寄存器
LOAD 重装载数值寄存器
VAL 当前数值寄存器
CALIB 校准数值寄存器
SysTick 属于内核的外设,有关的寄存器定义和库函数都在内核相关的库文件core_cm3.h 中。
调用SysTick_Config(ticks);通过形参ticks设置重装载寄存器的值,设置优先级为最低的15。清空当前计数器的值,设置系统时钟72M,使能中断与SysTick定时器。
SysTick定时器进入一次中断时间计算T=RELOAD * 1/SYSCLK。用一个变量t记录进入中断的次数,则计时时间为t * T。
定时函数:设置为进一次中断用时 1us,将要计时的时间作为全局变量在中断服务函数中递减。计时时间就是timedelay us
另一种定时方法是利用每次SysTick计数到0时CTRL的位16会被置1,而读取该位后会自动清0的特性。
——————————————————————————————————————————————————————————————————————————————————————
SysTick相关函数:
①SysTick_CLKSourceConfig() //Systick选择时钟源(FWLIB-misc.c文件中)
②SysTick_Config(uint32_t ticks) //初始化Systick(CORE-core_cm3.h文件中)
③void SysTick_Handler(void);//中断服务函数
原型如下:
函数1的参数
SysTick_CLKSource_HCLK_Div8 外部时钟 72/8=9M
SysTick_CLKSource_HCLK 内部时钟 HCLK=72M
函数2原型
SysTick寄存器:(参考CM3权威指南)
CTRL 控制及状态寄存器
LOAD 重装载数值寄存器
VAL 当前数值寄存器
CALIB 校准数值寄存器
SysTick 属于内核的外设,有关的寄存器定义和库函数都在内核相关的库文件core_cm3.h 中。
调用SysTick_Config(ticks);通过形参ticks设置重装载寄存器的值,设置优先级为最低的15。清空当前计数器的值,设置系统时钟72M,使能中断与SysTick定时器。
SysTick定时器进入一次中断时间计算T=RELOAD * 1/SYSCLK。用一个变量t记录进入中断的次数,则计时时间为t * T。
定时函数:设置为进一次中断用时 1us,将要计时的时间作为全局变量在中断服务函数中递减。计时时间就是timedelay us
另一种定时方法是利用每次SysTick计数到0时CTRL的位16会被置1,而读取该位后会自动清0的特性。
——————————————————————————————————————————————————————————————————————————————————————
SysTick相关函数:
①SysTick_CLKSourceConfig() //Systick选择时钟源(FWLIB-misc.c文件中)
②SysTick_Config(uint32_t ticks) //初始化Systick(CORE-core_cm3.h文件中)
③void SysTick_Handler(void);//中断服务函数
原型如下:
函数1的参数
SysTick_CLKSource_HCLK_Div8 外部时钟 72/8=9M
SysTick_CLKSource_HCLK 内部时钟 HCLK=72M
函数2原型
相关文章推荐
- stm32在rt-thread上的SysTick(系统定时器)
- 关于STM32的systick定时器的详细说明
- STM32菜鸟成长记录---系统滴答定时器(systick)应用1
- stm32笔记:Systick系统滴答定时器
- stm32笔记:Systick系统滴答定时器
- 【iCore3 双核心板】例程五:SYSTICK定时器实验——定时点亮LED
- STM32-------系统滴答定时器(systick)应用
- Stm32定时器中断使LED灯闪烁
- Stm32 Systick定时器
- STM32的时钟(二):SysTick定时器实现Delay()函数
- STM32 SysTick定时器
- STM32 SysTick定时器
- stm32 SysTick定时器常见问题和实现延时
- STM32之SysTick嘀嗒定时器
- STM32中的SysTick定时器
- STM32 SysTick定时器
- STM32学习笔记---SysTick定时器
- stm32笔记:Systick系统滴答定时器(认识4)
- 基于stm32 Systick 的简单定时器(裸机)-- 数组实现
- R1 STM32的系统定时器SysTick笔记