Перейти к содержанию
    

STM32 Таймер: из 2-х 16-ти битных один 32-х битный

Связал два таймера TIM2->TIM4 в один 32-х битный таймер. TIM4 инкреметируентся при переполнении TIM2.

 

Нужно также связать TIM16 и TIM15. TIM15 ведомый, вроде настроил правильно

TIM15_SMCR = TIM_SMCR_TS_1 | TIM_SMCR_MSM | TIM_SMCR_SMS;

т.е. TS = 010: Internal Trigger 2 (ITR2), из дата шита TIM15 можно сделать ведомым от TIM16 или от TIM17.

 

Настраиваю TIM16. Чтобы тим15 считал переполнения от тим16, нужно чтобы тим16 генерировал TRGO. На схеме TIM16 есть сигнал TRGO. Но как его излучать - не понятно. В других таймерах в регистре СR2 есть биты MMS: Master mode selection. При MMS = 2 при переполнении таймер будет излучать TRGO.

010: Update - The update event is selected as trigger output (TRGO). For instance a master

timer can then be used as a prescaler for a slave timer.

Но в TIM16/17 в регистре СR2 нет полей MMS.

 

Как связать таймера TIM16->TIM15?

post-49045-1382899248_thumb.jpg

post-49045-1382899258_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как я понимаю, для одного таймера нужно разрешить TRGO, а для другого выбрать TRGO источником тактирования. При условии, что они могут работать в паре. АЦП я так уже запускал, думаю и таймеры тоже будут работать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для TIM15->SMCR выбрать 010: Internal Trigger 2 (ITR2) и SMS установить 110: Trigger Mode

 

 

 

А отладчик есть какой-то? SMS попробуйте разные. Не соображу навскидку какой нужен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Отладчик есть.... IAR + jlink. С ТИМ15 вопросов нет. вопрос с ТИМ16

как для TIM16 разрешить TRGO?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно понадобится резрешить событи TG в ведущем таймере.

 

TIM16_EGR бит 6

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Bit 6 TG: Trigger generation

This bit is set by software in order to generate an event, it is automatically cleared by

hardware.

0: No action.

1: The TIF flag is set in TIMx_SR register. Related interrupt or DMA transfer can occur if

enabled.

Ну как то не вяжется Related interrupt с TRGO. Тем более что этот бит автоматический сбрасывается.

В других таймерах (TIM2...TIM4) TRGO разрешается путём установки битов

TIMx->CR2->MMS: Master mode selection. В TIM16 нет полей MMS в регистре CR2. Похоже авторы забыли добавить эти биты в регистр. :laughing:

Хотя в даташите пишут

TIM15 can be synchronized with TIM16 and TIM17.

 

ps

вот reference_manual, 18.6.2 TIM16&TIM17 control register 2 (TIMx_CR2) - нет тут битов MMS в регистре CR2. В этом же документе в карте регистров 18.6.16 TIM16&TIM17 register map есть биты MMS в регистре CR2. Ну и под отладчиком в просмотре регистров тоже нет этих битов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

If OCx is selected on TIM3 as the trigger output (MMS=1xx), its rising edge is used to clock

the counter of TIM2.

 

Как я понял, нужно вот этот ОСх настроить, а вывод не подключать, если не нужен. Если возможность описана, то как-то заработает. Может можно использовать один таймер как ведущий для двух других? Битов нет, я вижу. Но есть возможность управлять событием. Может и не нужен этот бит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В документе по таймерам 3 серии сказано что в для tim17, tim16 в качестве trigger out используется OC.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...