STM32 v3.5固件库systick ms延时
[复制链接]
《如何从STM32F10xxx固件库V2.0.3升级为STM32F10xxx标准外设库V3.0.0》一文中的“3.3.2 SysTick”讲到:
在标准外设库中移除了SysTick的驱动,因此用户必须调用CMSIS定义的函数。 CMSIS只提供了一个SysTick设置的函数,替代了STM32原有SysTick驱动的全部函数。 SysTick_Config(uint32_t ticks); 该函数设置了自动重载入计数器(LOAD)的值,SysTick IRQ的优先级,复位了计数器(VAL)的值,开始计数并打开SysTick IRQ中断。SysTick时钟默认使用系统时钟。 下面的例程为使用固件库V2.0.3进行SysTick设置: /* Select the HCLK Clock as SysTick clock source (72MHz) */ SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK); /* SysTick end of count event each 1ms with input clock equal to 72MHz (HCLK) */ SysTick_SetReload(72000); /* Enable SysTick interrupt */ SysTick_ITConfig(ENABLE); 下面的例程为使用标准外设库V3.0.0进行SysTick设置: /* Setup SysTick Timer for 1 msec interrupts */ if (SysTick_Config(SystemFrequency / 1000)) /* SystemFrequency is defined in “system_stm32f10x.h” and equal to HCLK frequency */ { /* Capture error */ while (1); }
|