System clock setting:
RCC_OscInitStruct.PLL.PLLM = 4;
RCC_OscInitStruct.PLL.PLLN = 50;
RCC_OscInitStruct.PLL.PLLP = 2;
Timer duration set in tim.c
/* USER CODE END TIM13_Init 1 */
htim13.Instance = TIM13;
htim13.Init.Prescaler = 9999;
htim13.Init.CounterMode = TIM_COUNTERMODE_UP;
htim13.Init.Period = 9999;
htim13.Init.ClockDivision = TIM_CLOCKDIVISION_DIV4;
htim13.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
Interrupt Frequency =
TIM13 Clock / ((Prescaler + 1) × (Period + 1))
PF2 Toggle code in main.c:
if(htim->Instance == TIM13)
{
if(heart_beat == 0)
{
heart_beat = 1 ;
HAL_GPIO_WritePin(GPIOF, GPIO_PIN_2, GPIO_PIN_SET);
}
else
{
heart_beat = 0 ;
HAL_GPIO_WritePin(GPIOF, GPIO_PIN_2, GPIO_PIN_RESET);
}
}
No comments:
Post a Comment