Включил, но как только пытаюсь поменять значение if (!HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_11)){ HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, SET); __HAL_TIM_SET_COUNTER(&htim1, 0x0095); }
Там может быть типа такого, что 1 импульс подался после того, как счётчик достиг определенного значения, а потом не достаточно сбросить счётчик. Нужно таймер заново запустить. Это мое предположение, не знаю какая у вас ситуация
В IT есть такое: IS_TIM_32B_COUNTER_INSTANCE() Повторный старт таймера через HAL_TIM_PWM_Start не помог. Подробно, хочу следующее: 1) по внешнему меандру 50Гц ловить переход через ноль (первый раз после обнаружения перехода внешнего сигнала из логического нуля в единицу, второй раз после перехода из единицы в ноль). Потом с заданной задержкой (установку задержку хочу реализовать через кнопку) включать выход А, до наступления следующего перехода через 0 (далее откл. и повторение).
Не совсем. Заданный меандр с частотой 50Гц (период 20мс). А на выходе мне нужно получить 100Гц (период 10мс) изменяя длительность включения я так понимаю что это уже не меандр получается...