Страница 1 из 1
Timer 1 PWM
Добавлено: Сб фев 25, 2017 13:57:10
Vlid
Добрый день!
Как с помощью Cube STM32 получить такой двухканальный шим как на картинке?
(Получить сдвиг по фазе)

Re: Timer 1 PWM
Добавлено: Вс фев 26, 2017 18:57:56
OlegarX-RUS
Счёт - вверх-вниз,
Первый канал настраивается как PWM1 , второй как PWM2
Далее сами додумаете

Re: Timer 1 PWM
Добавлено: Пн фев 27, 2017 09:43:07
Vlid
Спасибо за ответ!
Пробовал на таймере 3 для третьего и четвертого каналов, но PWM работает синхронно.

Также на первом таймере пробовал, ситуация такая же - PWM работает синхронно.

Много разных настроек перепробовал, на знаю что делать.

Re: Timer 1 PWM
Добавлено: Пн фев 27, 2017 11:25:51
OlegarX-RUS
Ну я не пользуюсь кубом а пишу на чистом CMSIS
TIM1->PSC = 0x0;
TIM1->ARR = 0x220;
TIM1->CCMR1 = TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC2M | TIM_CCMR1_OC2CE | TIM_CCMR1_OC1CE;;
TIM1->CCER = TIM_CCER_CC1E | TIM_CCER_CC2E /*| TIM_CCER_CC1P*/;
TIM1->BDTR = TIM_BDTR_MOE | TIM_BDTR_AOE | TIM_BDTR_BKP | TIM_BDTR_BKE
TIM1->CCR1 = 0x110;
TIM1->CCR2 = 0x110;
TIM1->CR1 = TIM_CR1_CMS | TIM_CR1_CEN;
Хотя на кубе всё аналогично!!!
Примерное описание - Таймер считает UP/DOWN => Задаётся значение счёта => один канал PWM1 другой PWM2=> и настраивается до куда считать - один до половины, второй с половины. Как то так!
Re: Timer 1 PWM
Добавлено: Пн фев 27, 2017 12:31:40
scorpi_0n
Vlid писал(а):на знаю что делать.

Юзать таймер с DMAR. И по таблице через ДМА рулить таймером. На казусе был подобный пример на три канала.
Re: Timer 1 PWM
Добавлено: Пн фев 27, 2017 13:30:37
OlegarX-RUS
scorpi_0n писал(а):Vlid писал(а):на знаю что делать.

Юзать таймер с DMAR. И по таблице через ДМА рулить таймером. На казусе был подобный пример на три канала.
Да не надо там дма я же инициализацию привёл выше и даже избыточную так сказать...
Кстати UP/DOWN необязательно

Но нужно так сказать для другого

(Ну если эта затея заточена для объединения в связку с компараторами

аля для построения силового моста или не моста с обратной связью )
Re: Timer 1 PWM
Добавлено: Вт фев 28, 2017 17:27:18
Vlid
Да, это для моста. Но не работает такая инициализация. Почему тянутся фронта на одном канале, а другой не работает.

Re: Timer 1 PWM
Добавлено: Ср мар 01, 2017 00:27:20
OlegarX-RUS
Я не знаю что и куда у вас там тянется, а темболее почему.
Я вам привёл РАБОЧИЙ! пример!!! И доходчиво объяснил, что надо с этим делать!
А что у вас не получается почитайте в RM
И когда изучите этот документ тогда и будете понимать что и куда тянуть
Ну а если почему в одном тянется, а в друго ничего нет, так это потому (скорее всего так как я не телепат) что на каждом канале надо установить счёт до половинного значение ARR
У меня предчувствие, что с таким знанием RM мост вы будете делать очень долго

Да и забудьте вы этот HAL (КАЛ)
На CMSIS советую писать это как на высокоуровневом ассемблере
Всё таки счёт UP/DOWN необходимо обязательно!!! (забыл и говорил по памяти, а она иногда подводит)
Вот инициализация без всякого лишнего, при F 48 мегагерцах на выходе частота 100 килогерц (50 на каждый канал) с заполнением 25% на канал.(Как на вашей картинке

) Думаю пример исчерпывающий, я только что его на работоспособность проверил всё работает!!!
TIM1->PSC = 0;
TIM1->ARR = 480;
TIM1->CCMR1 = TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC2M | TIM_CCMR1_OC2CE | TIM_CCMR1_OC1CE;;
TIM1->CCER = TIM_CCER_CC1E | TIM_CCER_CC2E ;//| TIM_CCER_CC1P;
TIM1->BDTR = TIM_BDTR_MOE ;//| TIM_BDTR_AOE | TIM_BDTR_BKP | TIM_BDTR_BKE;
TIM1->CCR1 = 120;
TIM1->CCR2 = 360;
TIM1->CR1 = TIM_CR1_CMS | TIM_CR1_CEN;
Фотоотчёт прилагаю
Спойлер

И чтоб вы поняли урок вот ещё информация - '0' счёта находится на середине верхнего (1 канал) пика ну а '480' на середине нижней (2 канал) Это так для образования чтоб поняли всё таки чем отличается от вашей картинки

Re: Timer 1 PWM
Добавлено: Ср мар 01, 2017 08:09:38
Zhuk72
OlegarX-RUS писал(а):
Фотоотчёт прилагаю
Спойлер
Такие фотоотчеты принято прятать под спойлер.
Re: Timer 1 PWM
Добавлено: Ср мар 01, 2017 09:18:13
OlegarX-RUS
Учту

Re: Timer 1 PWM
Добавлено: Ср мар 01, 2017 11:17:46
Zhuk72
Вообще-то у вас еще есть время отредактировать тот пост и спрятать ссылку под спойлер.
Re: Timer 1 PWM
Добавлено: Ср мар 01, 2017 11:37:30
OlegarX-RUS
Zhuk72 писал(а):Вообще-то у вас еще есть время отредактировать тот пост и спрятать ссылку под спойлер.
Неугомонный какой

Исполнено

Re: Timer 1 PWM
Добавлено: Ср мар 01, 2017 12:29:42
Zhuk72
Спасибо, но я ведь не из-за упрямства писал ))
На 17" страница в 2 экрана получается, а на маленьких экранах вообще кошмар должен был твориться.
Надеюсь модераторы удалят наш диалог.
Re: Timer 1 PWM
Добавлено: Пт мар 03, 2017 21:27:59
Vlid
Re: Timer 1 PWM
Добавлено: Пт мар 03, 2017 23:04:02
OlegarX-RUS