AnsweredAssumed Answered

Can STM32F103RB-Nucleo even do PWM Input Capture?

Question asked by john doe on Jul 26, 2017
Latest reply on Jul 26, 2017 by Vangelis Fortounas

Cannot get it to fire the IC Capture interrupt, and the macro that decodes the PWM Pulse finished interrupt might be broken becuase all running timers seem to be  sent a handle to that callback. htim->Instance TIM2 gets a callback, when i tried.


LED shows the PWM ringing away from TIM1 but TIM2 never gets the IC Capture callback


STM32CubeMX 4.22



Timer 1:

prescaler 7199

period 9999

pulse 5

Output to pin PA11


Timer 2:

prescaler 0

period 65535

input TI1FP1 on PA0

The CubeMX application generates:

    /**TIM2 GPIO Configuration    
    PA0-WKUP     ------> TIM2_CH1
    GPIO_InitStruct.Pin = GPIO_PIN_0;
    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
    GPIO_InitStruct.Pull = GPIO_NOPULL;

and GPIO_MODE_AF_INPUT is the same as MODE_INPUT

DIER is set for interrupt on CC1IE and CC2IE

can't get CCR1 to set


AFIO->MAPR:  0x02000000


GPIOA->CRL:  0x4434AA44
GPIOA->CRH:  0x8884B444
GPIOA->IDR:  0x0000F7DE
GPIOA->ODR:  0x0000A000
GPIOA->BSRR: 0x00000000
GPIOA->BRR:  0x00000000
GPIOA->LCKR: 0x00000000


TIM1->CR1:   0x00000001
TIM1->CR2:   0x00000000
TIM1->PSC:   0x00001C1F
TIM1->ARR:   0x0000270F
TIM1->RCR:   0x00000000
TIM1->DIER:  0x00000010
TIM1->SMCR:  0x00000000
TIM1->CCER:  0x00001000
TIM1->CCMR1: 0x00000000
TIM1->CCMR2: 0x00006C00
TIM1->CCR1:  0x00000000
TIM1->CCR2:  0x00000000
TIM1->CCR3:  0x00000000
TIM1->CCR4:  0x00000005
TIM1->EGR:   0x00000000
TIM1->DCR:   0x00000000
TIM1->DMAR:  0x00000001
TIM1->CNT:   0x0000027B
TIM1->SR:    0x00000011


TIM2->CR1:   0x00000001
TIM2->CR2:   0x00000000
TIM2->PSC:   0x00000000
TIM2->ARR:   0x0000FFFF
TIM2->RCR:   0x00000000
TIM2->DIER:  0x00000006
TIM2->SMCR:  0x00000054
TIM2->CCER:  0x00000002
TIM2->CCMR1: 0x00000201
TIM2->CCMR2: 0x00000000
TIM2->CCR1:  0x00000000
TIM2->CCR2:  0x00000000
TIM2->CCR3:  0x00000000
TIM2->CCR4:  0x00000000
TIM2->EGR:   0x00000000
TIM2->DCR:   0x00000000
TIM2->DMAR:  0x00000001
TIM2->CNT:   0x00005821
TIM2->SR:    0x00000059