你的位置:首页 > 操作系统

[操作系统]正点原子STM32探索者学习笔记3


编写者:龙诗科

邮箱:longshike2010@163.com

2015-5-18

1.Systick定时器,是一个简单的定时器,对于CM3,CM4内核芯片,都有Systick定时器。

2.Systick定时器常用来做延时,或者实时系统的心跳时钟。这样可以节省MCU资源,不用浪费一个定时器。

3.Systick定时器就是系统滴答定时器,一个24位的倒计数定时器,计到0时,将从RELOAD寄存器中自动重载定时初值。

4.Systick定时器可以被捆绑在NVIC,其中断优先级可以设置。

5.有4个Systic寄存器:CTRL(控制和状态寄存器)如下:

用Systick实现延迟函数的例子如下:

static __IO uint32_t TimingDelay;void Delay(__IO uint32_t nTime){  TimingDelay = nTime;  while(TimingDelay != 0);}void SysTick_Handler(void){  if (TimingDelay != 0x00)   {    TimingDelay--;   }} int main(void) { …  if (SysTick_Config(SystemCoreClock / 1000)) //systick时钟为HCLK,中断时间间隔1ms   {   while (1);   }  while(1)   { Delay(200);//2ms   …   }}