金牌会员
 
- 积分
- 1049
- 金钱
- 1049
- 注册时间
- 2016-9-3
- 在线时间
- 158 小时
|
3金钱
单片机型号:STM32F103C8T6
我用TIM2做了个定时104us,但是在初始化的时候不开启,在别处开启。程序如下:
但是在初始化后,定时器并没有关闭,直接开始工作,并且能进中断。这是哪里出了问题?
void TIM2_INIT(void)
{
TIM_TimeBaseInitTypeDef TIM_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);
TIM_InitStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_InitStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_InitStructure.TIM_Period = 5;
TIM_InitStructure.TIM_Prescaler = 1247;
TIM_InitStructure.TIM_RepetitionCounter = 0;
TIM_TimeBaseInit(TIM2,&TIM_InitStructure);
TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE);
TIM_ClearITPendingBit(TIM2,TIM_IT_Update);
TIM_Cmd(TIM2,DISABLE);
NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
NVIC_Init(&NVIC_InitStructure);
}
|
|