Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void TIM_InitMaster()
- {
- RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);
- TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
- NVIC_InitTypeDef NVIC_InitStructure;
- TIM_TimeBaseStructInit(&TIM_TimeBaseInitStructure);
- TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_CenterAligned3;
- TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1;
- TIM_TimeBaseInitStructure.TIM_Prescaler = 50000;
- TIM_TimeBaseInitStructure.TIM_Period = 20;
- TIM_TimeBaseInitStructure.TIM_RepetitionCounter = 0;
- TIM_TimeBaseInit(TIM2, &TIM_TimeBaseInitStructure);
- TIM_ARRPreloadConfig(TIM2, ENABLE);
- TIM_SelectMasterSlaveMode(TIM2, TIM_MasterSlaveMode_Enable);
- TIM_SelectOutputTrigger(TIM2, TIM_TRGOSource_Enable);
- TIM_Cmd(TIM2, ENABLE);
- TIM_UpdateDisableConfig(TIM2, ENABLE);
- TIM_UpdateRequestConfig(TIM2, TIM_UpdateSource_Global);
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);
- NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;
- NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
- NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
- NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
- NVIC_Init(&NVIC_InitStructure);
- TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE);
- TIM_ClearITPendingBit(TIM2, TIM_IT_Update);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement