用中断的方式实现delay延时的一点注释
生活随笔
收集整理的這篇文章主要介紹了
用中断的方式实现delay延时的一点注释
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
static __IO uint32_t TimingDelay;
void Delay(__IO uint32_t nTime)
{?
? ?TimingDelay = nTime;
? ?while(TimingDelay != 0);
}
void SysTick_Handler(void)
{
? ? if (TimingDelay != 0x00)?
? ? ?{?
? ? ? ?TimingDelay--;
? ? ?}
} //是在stm32f10x_it.c定義好的”void SysTick_Handler(void){}”就差填里面的函數體,中斷的時候自動調用。
?int main(void)
?{ ?…
? ? if (SysTick_Config(SystemCoreClock / 1000)) //systick時鐘為HCLK,中斷時間間隔1ms
? ? ?{
? ? ?while (1);
? ? ?}
? ? while(1)
? ? ?{ Delay(200);//200ms
? ? ?…?
? ? ?}
}
void Delay(__IO uint32_t nTime)
{?
? ?TimingDelay = nTime;
? ?while(TimingDelay != 0);
}
void SysTick_Handler(void)
{
? ? if (TimingDelay != 0x00)?
? ? ?{?
? ? ? ?TimingDelay--;
? ? ?}
} //是在stm32f10x_it.c定義好的”void SysTick_Handler(void){}”就差填里面的函數體,中斷的時候自動調用。
?int main(void)
?{ ?…
? ? if (SysTick_Config(SystemCoreClock / 1000)) //systick時鐘為HCLK,中斷時間間隔1ms
? ? ?{
? ? ?while (1);
? ? ?}
? ? while(1)
? ? ?{ Delay(200);//200ms
? ? ?…?
? ? ?}
}
總結
以上是生活随笔為你收集整理的用中断的方式实现delay延时的一点注释的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用spi协议,接收来自slave的数据
- 下一篇: 学习SPI的一些疑惑