ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
942397 Топик полностью
Sl (25.08.2019 22:10, просмотров: 228) ответил VLLV на ШИМ в STM32 генерирует импульс при CСR = 0. Как проще всего отключать (в HAL)?
Про HAL не скажу. Я знаю следующие. Первый способ "обнулить" выход. // TIMx capture/compare enable register - TIMx_CCER. n - номер канала. TIMx_CCER_CCnE: Capture/Compare n output enable. Бит CCnE = 0. Второй способ "обнулить" выход. // TIMx capture/compare mode register 1 - TIMx_CCMR1. // TIMx capture/compare mode register 2 - TIMx_CCMR2. Биты OCnM[3] = OCnM[2:0] = 0. Запретить режим ШИМа. Третий способ "обнулить" выход. Внешний сигнал на вход TIMx_ETR. Естественно, это выход должен иметь соответствующую альтернативную функцию. Внимание не все счетчики имеют тиакой вход. Кроме того хорошо бы этот вход иметь в качестве источника внешненго прерывания. Но для этого нужно сначала его разрешить записав TIMx_CCER_OCnCE=1 - Output compare x clear enable. Можно определить активный уровень TIMx_ETR. Можно еще, наверное, отключить альтернативную функцию для выхода ШИМа. Но, я так еще не пробовал.