SysTick时钟为HCKL的8分频,故如果HCLK时钟为72MHz,SysTick->LOAD的值为7200的话,则SysTick 1ms中断 一次。如果屏蔽全局中断的话,则STSTICK不能这用。
---------------------------------------------------------------------------------------------------- 例: //SysTick 配置 if (SysTick_Config(SystemFrequency / 1000))// (72MHz/1000)*SYSCLK=1MS {
while (1); } ---------------------------------------------------------------------------------------------------- 本文引用地址:https://www.eepw.com.cn/article/201611/321610.htm//具体应用 volatile u16 Timer1; void SysTickDelay(u16 dly_ms) { Timer1=dly_ms; while(Timer1); } ---------------------------------------------------------------------------------------------------- 中断函数
void SysTick_Handler(void) { if(Timer1) Timer1--; } |
评论