реклама на сайте
подробности

 
 
> STM32 + PWM out
juvf
сообщение Dec 16 2012, 04:55
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Не могу ШИМ выдать на порт. Использую ТМ1 канал 4 (PA11)

Код
//настроим порт PA11
        RCC_APB2ENR_bit.IOPAEN = 1; // Разрешить тактирование PORTA
        RCC_APB2ENR_bit.AFIOEN = 1; // Тактирование альтернативных функций GPIO.
      GPIOA_CRH_bit.MODE11 = 2; // Output mode, max speed 2 MHz.
    GPIOA_CRH_bit.CNF11 = 2;   //Alternate function output Push-pull

    //настроим таймер ТМ1 для генерации шим сигнала
      RCC_APB2ENR_bit.TIM1EN = 1; //включение таймера
    TIM1_PSC = 22; //  22118400 / 22  период ~ 1 мкс
    TIM1_CCER_bit.CC4E = 1; //разрешим канал 4
    TIM1_CCMR2_bit.OC4M = 6; //110b PWM mode 1
    TIM1_CCR4 = 0x8000;
    TIM1_ARR = 0x9000;
    TIM1_CR1_bit.CEN = 1; // On TM1

После такой инициализации в дебагере вижу что счетчик таймера считает 0...0х9000. Но на ноге РА11 стоит 0. Почему на РА11 нет ШИМ?

ps Порта РА11 имеет две альтернативные функции USART1_CTS / TIM1_CH4. Как сделать чтобы порт был TIM1_CH4? Как сделать чтобы порт был USART1_CTS?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AHTOXA
сообщение Dec 16 2012, 05:51
Сообщение #2


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Вы забыли:
Код
TIM1->BDTR |= TIM_BDTR_MOE; // Специальная фишка у T1 и T8 - Main Output Enable


Цитата(juvf @ Dec 16 2012, 10:55) *
Порта РА11 имеет две альтернативные функции USART1_CTS / TIM1_CH4. Как сделать чтобы порт был TIM1_CH4? Как сделать чтобы порт был USART1_CTS?

Какую периферию включите, туда и подключится ножка.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
juvf
сообщение Dec 16 2012, 07:19
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(AHTOXA @ Dec 16 2012, 11:51) *
Вы забыли:
Код
TIM1->BDTR |= TIM_BDTR_MOE; // Специальная фишка у T1 и T8 - Main Output Enable

))) Ага, потайная компата. *ЗАПЕСАЛ*
Спасибо. Проблема решена

Цитата
Какую периферию включите, туда и подключится ножка.

А если обе переферии включены?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 09:14
Рейтинг@Mail.ru


Страница сгенерированна за 0.01373 секунд с 7
ELECTRONIX ©2004-2016