金牌会员
 
- 积分
- 2729
- 金钱
- 2729
- 注册时间
- 2015-12-27
- 在线时间
- 469 小时
|
本帖最后由 钩月黄昏 于 2018-7-11 09:54 编辑
将某定时器设置为1ms的中断间隔,并在中断函数中将systick自增,如下所示:
void TIM14_IRQHandler( void )
{
if( TIM_GetITStatus( TIM14, TIM_IT_Update ) != RESET )
{
TIM_ClearITPendingBit( TIM14, TIM_IT_Update );
systick++;
}
}
此时我在其他地方调用如下函数获取systick的值:
方式1:
uint32_t GetSysTick( void )
{
return systick;
}
方式2:
uint32_t GetSysTick( void )
{
uint32_t ticktemp;
屏蔽中断;
ticktemp = systick;
打开中断;
return ticktemp;
}
以上两种方式对于STM32的单片机,有差别吗?请高人指点一下,谢谢。
|
|