Solved
Timer16 PWM Not Working
Posted on October 20, 2017 at 02:46
I am using an STM32F072B-DISCO. I am trying to get a PWM on pin A6 using timer 16. The timer seems to be counting as expected, but there is no output on A6.
Here is my code:
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM16, ENABLE);GPIO_InitStruct.GPIO_Pin = GPIO_Pin_6;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStruct.GPIO_OType = GPIO_OType_PP; GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_NOPULL; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStruct); GPIO_PinAFConfig(GPIOA, GPIO_PinSource6, GPIO_AF_5);TIM_TimeBaseStructInit(&TIM_TimeBaseInitStruct); TIM_TimeBaseInitStruct.TIM_Period = 480; //LED Intensity. Frequnecy (100kHz) TIM_TimeBaseInitStruct.TIM_Prescaler = 0; TIM_TimeBaseInit(TIM16, &TIM_TimeBaseInitStruct); TIM_OCStructInit(&TIM_OCInit); TIM_OCInit.TIM_OCMode = TIM_OCMode_PWM1; TIM_OCInit.TIM_OutputState = TIM_OutputState_Enable; TIM_OCInit.TIM_OCPolarity = TIM_OCPolarity_High; TIM_OCInit.TIM_Pulse = 48; TIM_OC1Init(TIM16, &TIM_OCInit); TIM_Cmd(TIM16, ENABLE);
Can someone tell me why A6 does not have an output?

