#include "stm32f4xx.h"
void SysTick_ConfigWithClockSource(uint32_t ticks, uint8_t useHCLK) {
SysTick->LOAD = ticks - 1; // 设置重装载值
SysTick->VAL = 0; // 清零计数器
if (useHCLK) {
SysTick->CTRL |= SysTick_CTRL_CLKSOURCE_Msk; // 使用 HCLK 作为时钟源
} else {
SysTick->CTRL &= ~SysTick_CTRL_CLKSOURCE_Msk; // 使用 HCLK/8 作为时钟源
}
SysTick->CTRL |= SysTick_CTRL_TICKINT_Msk | // 使能中断
SysTick_CTRL_ENABLE_Msk; // 启用 SysTick
}
|