zoukankan      html  css  js  c++  java
  • 正点原子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
         … 
         }
    }
  • 相关阅读:
    P2184 贪婪大陆
    codeforces-1348-D Phoenix and Science
    联系我
    留言板
    友链
    java集合ArrayList按指定字段排序
    linux下设置oracle开机自启动
    微信公众号开发参考教程
    java生成快递单并调用打印机打印
    java生成128A条形码
  • 原文地址:https://www.cnblogs.com/longshike2010/p/5506406.html
Copyright © 2011-2022 走看看