Цитата
Но если я убираю команду TIM2->EGR = TIM_EGR_UG;
смысл команды не сгенерить прерывание
смысл команды вызвать событие и обновить регистры таймера, обновление которых происходит по событию, которое в свою очередь и генерит прерывание.
Прерывание в данном случае - побочный эффект от обновления таймера.
Цитата
Как-то сложно всё это получается. Попробуйте просто:
1. Запустить таймер
2. Разрешить прерывание
Именно в такой последовательности.
и будет исходная задача, без вызова события не произойдет настройки таймера,
а событие вызовет прерывание, потому сразу после разрешения прерывания в вашем случае полетите либо по таймеру работающему по старыми настройкам, либо если обновили настройки, то сразу по прерыванию...