Форум РадиоКот https://radiokot.ru/forum/ |
|
не работают прерывания таймера TIM4 https://radiokot.ru/forum/viewtopic.php?f=59&t=142210 |
Страница 1 из 1 |
Автор: | pirotehnick [ Вс фев 19, 2017 18:22:45 ] |
Заголовок сообщения: | не работают прерывания таймера TIM4 |
Помогите разобраться с таймером STM32F407VGT6. Как нормально сгенерировать прерывание в режиме работы PWM1 у таймера TIM4. Либо по результату сравнения с CCR_CH1, либо сбросе ARR Код: //PrescalerValue = (uint16_t) ((SystemCoreClock /2) / 21000000) - 1; /* Time base configuration */ TIM_TimeBaseStructure.TIM_Period = pre_val; TIM_TimeBaseStructure.TIM_Prescaler = psc_val; TIM_TimeBaseStructure.TIM_ClockDivision = 0; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM4, &TIM_TimeBaseStructure); /* PWM1 Mode configuration: Channel1 */ TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; TIM_OCInitStructure.TIM_Pulse = pre_val/2; TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; TIM_OC1Init(TIM4, &TIM_OCInitStructure); TIM_ARRPreloadConfig(TIM4, ENABLE); TIM_Cmd(TIM4, ENABLE); TIM_ITConfig(TIM4, TIM_IT_Update, ENABLE); NVIC_EnableIRQ(TIM4_IRQn); Флаг update висит постоянно и не реагирует на запись в него значения |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |