这一课的主要内容是STM32系统时钟定时器systick的配置以及如何产生精确延时。 通常实现Delay(N)函数的方法为:for(i = 0; i <= x; i ++); x --- 对应于 对应于N 毫秒的循环值对于STM32系列微处理器来说,执行一条指令只有几十个ns,进行for循环时,要实现N毫秒的x值非常大,而且由于系统频率的宽广,很难计算出延时N毫 秒的精确值。针对STM32微处理器,需要重新设计一个新的方法去实现该功能,以实现在程序中使用Delay(N)。 注: 全局变量TimingDelay 必须定义为volatile 二、 SysTick的配置使用方法外部晶振为8MHz,9倍频,系统时钟为72MHz,SysTick的最高频率为9MHz(最大为HCLK/8),在这个条件下,把SysTick 效验值设置成9,将SysTick 时钟设置为9MHz, 就能够产生1us的时间基值,即SysTick产生1us的中断。使用ST的函数库使用systick的方法1、调用SysTick_CounterCmd() 失能SysTick计数器2、调用SysTick_ITConfig () 失能SysTick中断 3、调用SysTick_CLKSourceConfig() 设置SysTick时钟源。4、调用SysTick_SetReload() 设置SysTick重装载值。5、调用SysTick_ITConfig () 使能SysTick中断6、调用SysTick_CounterCmd() 开启SysTick计数器7、,包含编译相关文件8、
stm32定时器参考资料 来自淘豆网m.daumloan.com转载请标明出处.