stm32 tim6、tim7中断配置以及注意事项

论坛 期权论坛 脚本     
匿名技术用户   2021-1-5 13:08   17   0
void TIM6_Init(void)
{
NVIC_InitTypeDef NVIC_InitStructure;

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);

NVIC_InitStructure.NVIC_IRQChannel = TIM6_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 13;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);


RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6, ENABLE);
TIM6->PSC = 72*2 - 1; //
TIM6->ARR = 25-1; // 10 000 Hz
TIM6->CR1 = 0x0004 + 0x0001; // URS = 1 CEN = 1
TIM6->DIER = 0x0001; //

}

static uchar TIM6_Flag=0;
static uchar TIM6_Count=0;
void TIM6_IRQHandler(void)
{

TIM6_Count++;
if(TIM6_Count==4)
{
// if(TIM6_Flag==0)
// {
// TIM6_Flag=1 ;
// LED1(OFF) ;
// }
// else
// {
// LED1(ON);
// TIM6_Flag=0;
// }
TIM6_Count=0;
}
//
LED2_TOGGLE ;
TIM6->SR=0x0000;//
STEPMOTOR1_STEP;
// TIM6->SR=0x0000;//
}

注意:进入中断后,要立刻清标志位。否则会出现意外。

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP