LAS9891 0 5 ноября, 2020 Опубликовано 5 ноября, 2020 (изменено) · Жалоба Разрабатываю проект в STM32Cube для Keil. В проекте имеется два таймера: TIM5 и TIM3. TIM3 настраиваю как Master. TIM3 тактируется от Internal clock. В меню Trigger Event Selection TRGO выбрано формирование импульса по совпадению - значение Event. TIM2 настраиваю как Slave. TIM5 тактируется от External Clock Mode 1, в качестве Trigger Source выбран ITR2 - что соответствует TIM3. Подобнее настройки TIM5 на картинке: Таким образом TIM3 работает на частоте шины, а TIM5 работает на частоте TIM3. На осциллографе наблюдаю следующие сигналы: На осциллограмме верхний сигнал - выход TIM3 сразу после сброса контроллера; нижний сигнал - выход TIM5 сразу после сброса контроллера. На второй осциллограмме те же сигналы позднее - второй и последующие периоды TIM5. Видно, что при старте длительность лог. 0 на выходе TIM5 больше чем в последующих периодах. Кроме того, первый срез на выходах происходит неодновременно. Хотелось бы чтобы первый импульс на выходе TIM5 был аналогичен последующим. Пробовал различные настройки в Cube - не помогло. Как сделать первоначальные срезы синхронными и выровнять длительность первого импульса на TIM2 с остальными? Изменено 5 ноября, 2020 пользователем LAS9891 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KnightIgor 2 13 ноября, 2020 Опубликовано 13 ноября, 2020 · Жалоба On 11/5/2020 at 4:43 PM, LAS9891 said: Разрабатываю проект в STM32Cube для Keil. В проекте имеется два таймера: TIM5 и TIM3. TIM3 настраиваю как Master. TIM3 тактируется от Internal clock. В меню Trigger Event Selection TRGO выбрано формирование импульса по совпадению - значение Event. TIM2 настраиваю как Slave. TIM5 тактируется от External Clock Mode 1, в качестве Trigger Source выбран ITR2 - что соответствует TIM3. Подобнее настройки TIM5 на картинке: Таким образом TIM3 работает на частоте шины, а TIM5 работает на частоте TIM3. На осциллографе наблюдаю следующие сигналы: На осциллограмме верхний сигнал - выход TIM3 сразу после сброса контроллера; нижний сигнал - выход TIM5 сразу после сброса контроллера. На второй осциллограмме те же сигналы позднее - второй и последующие периоды TIM5. Видно, что при старте длительность лог. 0 на выходе TIM5 больше чем в последующих периодах. Кроме того, первый срез на выходах происходит неодновременно. Хотелось бы чтобы первый импульс на выходе TIM5 был аналогичен последующим. Пробовал различные настройки в Cube - не помогло. Как сделать первоначальные срезы синхронными и выровнять длительность первого импульса на TIM2 с остальными? Может картинка вверху - следствие последовательной инициализации таймеров программой при старте, а вторая картинка - когда они уже до этого были проинициализированы и просто запускаются внешним сигналом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться