Всем привет. Только начинаю работать с stm32(stm32f050,32f0disc...), вроде чуть освоил GPIO, ADC,TIM... Но есть одно но.. Решил сделать бегущие огни... на GPIO - без проблем, на TIM - так и не понял... уперся в прерывания....
Т.е. хочу получить на каналах что-то похожее...

нужно, так - по факту, так или так(но ето не бегущий огонь)

TIM3-CH1 ____П___П___П_______ __П___П___П___П___ __-----_____-----__
TIM3-CH2 _____П___П___П______ __П___П___П___П___ __--_______--____
TIM3-CH3 ______П___П___П_____ __П___П___П___П___ __---______---____
TIM3-CH4 _______П___П___П____ __П___П___П___П___ __-----_____----___

Посмотрел по примерам -
1.NVIC_EnableIRQ(TIM3_IRQn); //разрешаем прерывания
2. void TIM3_IRQHandler(void); //При прерывании выполняем нужный код

А дальше, приплыли в темный лес...
3. Осталось разрешить обновление прерывания TIM_DIER_UIE?
4. Выполнить break TIM_BDTR_BG?
5. Выключить TIM3 TIM_BDTR_MOE; ?
6. Включить TIM3-CH1;Выключить СН1 - Включить СН2.....? Или это обрабатывает аппаратно сам TIM3?
Подскажите пожалуйста, какие-нить алгоритмы.... Тупик... laughing.gif