定时器的基本概述

  • 通过滴漏漏沙瓶这两个例子简单讲述定时器的基本工作原理。

STM32的常见的定时器资源: 系统嘀嗒定时器SysTick看门狗定时器WatchDog实时时钟RTC基本定时器通用定时器高级定时器

  • 系统嘀嗒定时器SysTick :这是一个集成在Cortex M3内核当中的定时器,它并不属于芯片厂商的外设,也就是说使用ARM内核的不同厂商,都拥有基本结构相同的系统定时器。主要目的是给RTOS提供时钟节拍做时间基准。
  • 基本定时器:TIM6、TIM7。
  • 通用定时器:TIM2、TIM3、TIM4、TIM5。在基本定时器的基础上,实现输出比较、输入捕获、PWM生成、单脉冲模式输出等功能。这类定时器最具代表性,使用也最广泛。
  • 高级定时器:TIM1、TIM8。

    定时器发生中断时间的计算方法

    定时时间 = (Prescaler+1 ) X (Counter Period+1) X 1/ 定时器时钟频率
    时钟信号1KHz,Prescaler为9,Counter Period为999,定时时间?
    image.png

    实训案例:外部中断信号控制LED灯开关

  • [x] 1.利用TIM2实现间隔定时,每隔0.2秒将LED0、LED1的开关状态翻转。

  • 2.利用TIM6实现间隔定时,每隔1秒将LED2、LED3的开关状态翻转。
  • 3.利用TIM7实现间隔定时,每隔0.2秒将LED4、LED5的开关状态翻转。
  • 4.修改TIM2的初始化代码,改为每隔0.5秒将LED0、LED1的开关状态翻转。
  • 5.复习按键中断,控制LED6、LED7的开关翻转。

    知识总结: