Настраиваем работу комплементарных выходов таймеров в микроконтроллере STM32f103.

/* USER CODE BEGIN 2 */
HAL_TIM_OC_Start_IT(&htim1,TIM_CHANNEL_3);

HAL_TIMEx_OCN_Start_IT(&htim1,TIM_CHANNEL_1);
HAL_TIM_OC_Start_IT(&htim1, TIM_CHANNEL_1);

/* USER CODE END 2 */

 

/* USER CODE BEGIN 0 */
void HAL_TIM_OC_DelayElapsedCallback(TIM_HandleTypeDef *htim) {
if(htim->Instance == TIM1) {
HAL_GPIO_TogglePin(LED2_GPIO_Port, LED2_Pin);
}
}

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { // функция которая обрабатывает наше прерывание
if(htim->Instance == TIM1) { //проверяем, что прерывание произошло именно от таймера TIM1
HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin); // мигаем светодиодом, который расположен на отладочной плате.
}
}

/* USER CODE END 0 */