新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > STM32学习手记⑤-SysTick精确延时

STM32学习手记⑤-SysTick精确延时

作者: 时间:2016-11-29 来源:网络 收藏
************************************************************/void SysTick_Configuration( ){SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8); //选择HCLK/8时钟作为SysTick时钟,9MHzSysTick_SetReload(9000); //计数9000次为1msSysTick_ITConfig(ENABLE); //打开中断}/************************************************ 函数名称 :Delay* 功能描述 : 精确延时函数* 参数 : nTime* 返回值 : 无* 全局变量 : TimingDelay* 全局静态变量: 无* 局部静态变量: 无****************************************************/void Delay(u32 nTime) {SysTick_CounterCmd(SysTick_Counter_Enable); //打开SysTick计数器TimingDelay = nTime;while(TimingDelay != 0);SysTick_CounterCmd(SysTick_Counter_Disable); //关闭计数器SysTick_CounterCmd(SysTick_Counter_Clear); //清空计数器} /********************************************* 函数名称 :main()* 功能描述 : 主函数* 参数 : 无* 返回值 : 无* 全局变量 : 无* 全局静态变量: 无* 局部静态变量: 无**********************************************/int main(){RCC_Configuration();GPIO_Configuration();NVIC_Configuration( );SysTick_Configuration( );//EXTI_Configuration( );while(1){GPIO_SetBits(GPIOE,GPIO_Pin_0);Delay(1000);GPIO_ResetBits(GPIOE,GPIO_Pin_0);Delay(1000);} }//中断函数在 stm32f10x_it.c 里面void SysTickHandler(void){TimingDelay--; }
上一页 1 2 3 下一页

评论


技术专区

关闭