STM32F30X SYSTICK做非精確的delay功能
voiddelay_us(u16n)
{
SysTick->LOAD=48*n;//裝載計數(shù)器因為時鐘為48Mhz,48次1us
SysTick->CTRL=0x00000005;//時鐘來源設(shè)為為HCLK(48Mhz),打開定時器
while(!(SysTick->CTRL&0x00010000));//等待計數(shù)到0
SysTick->CTRL=0x00000004;//關(guān)閉定時器
}
voiddelay_ms(u32n)
{
while(n)
{
delay_us(1000);
n--;
}
}