时基定时器
①SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8); //时基分频设定
* @arg SysTick_CLKSource_HCLK_Div8: AHB clock divided by 8 selected as SysTick clock source.
设定为系统时钟的1/8
* @arg SysTick_CLKSource_HCLK: AHB clock selected as SysTick clock source.
设定为系统时钟
②SysTick_Config(SystemCoreClock / MinTime) //最小时基设定
SystemCoreClock为168Mhz,若需要最小时基为1us,则MinTime为1000000
NVIC_SetPriority(SysTick_IRQn, 0x0); //设置中断级别
③void SysTick_Handler(void) //时基中断处理
{ TimingDelay_Decrement(); }
④void TimingDelay_Decrement(void) //倒数
{
if (TimingDelay != 0x00)
{ TimingDelay--; }
}
⑤void Delay(__IO uint32_t nTime) //延时函数,延时为时基*nTime
{
TimingDelay = nTime;
while(TimingDelay != 0);
}