roboforum.ru

Технический форум по робототехнике.

STM32F4 + MG995 = как подобрать ШИМ?

Re: STM32F4 + MG995 = как подобрать ШИМ?

Askar » 14 мар 2013, 19:40

Классный сайт! Нужно посмотреть есть ли там по PayPal, можно ли оплачивать через него, доставка надеюсь есть в КЗ.
Но это вообще супер Ангел!!! Я его тоже прикуплю!

Re: STM32F4 + MG995 = как подобрать ШИМ?

Angel71 » 14 мар 2013, 19:42

там почти всё также, как и на ebay. а свинской палки (мы у них до сих пор в г списке) там нет. :oops: за что я их и уважаю.

Re: STM32F4 + MG995 = как подобрать ШИМ?

bambrman » 07 окт 2013, 20:16

dccharacter, откуда на "картинке взрывающей мозг" берется частота 42 МГц? Пример работает отлично на stm32f4-discovery, но только если в исходниках не проводить настройку на используемый на плате кварц, но если провести, т.е. HSE должно быть 8 MHz - в таком случае все плывет. Но даже и в случае как на картинке, таймер будет работать на частоте 21 Мгц, а предделитель (как по документации) должен вычисляться как 21 / 3 (да периода 60000 клоков) - 1 т.е = 6 ???

Re: STM32F4 + MG995 = как подобрать ШИМ?

Zhivoi » 29 ноя 2013, 11:58

Я новичок. Два дня изучаю STM32. Основная цель - управление различными серводвигателями.
И возник у меня вопрос - вот пример из первого поста ТСа работает. Поправил коэффициенты - вообще хорошо работает. Но вот меняю я GPIO_Pin_9 и GPIO_PinSource9 с девятки на семерку, переключаю серву с 9 ноги на 7, и она уже не работает. Смотрел в даташит на F4 - разницы между 9 и 7 ногой не нашел. Плохо смотрел?

Добавлено спустя 1 час 31 минуту 16 секунд:
Нашел в чем разница - нога 7 это TIM1_ETR, а 9 нога - это TIM1_CH1.
Чтобы запустить сигнал на TIM1_ETR надо явно что-то еще в коде сделать. Осталось узнать что именно.

Re: STM32F4 + MG995 = как подобрать ШИМ?

elmot » 29 ноя 2013, 17:04

если там аппаратный ШИМ по таймеру - то на TIM1_ETR не получится ничо. нужны ноги с функцией TIMx_CHy или хотя бы TIMx_CHyN

Re: STM32F4 + MG995 = как подобрать ШИМ?

linvinus » 29 ноя 2013, 17:28

Zhivoi писал(а):Я новичок. Два дня изучаю STM32. Основная цель - управление различными серводвигателями.
И возник у меня вопрос - вот пример из первого поста ТСа работает. Поправил коэффициенты - вообще хорошо работает. Но вот меняю я GPIO_Pin_9 и GPIO_PinSource9 с девятки на семерку, переключаю серву с 9 ноги на 7, и она уже не работает. Смотрел в даташит на F4 - разницы между 9 и 7 ногой не нашел. Плохо смотрел?

Добавлено спустя 1 час 31 минуту 16 секунд:
Нашел в чем разница - нога 7 это TIM1_ETR, а 9 нога - это TIM1_CH1.
Чтобы запустить сигнал на TIM1_ETR надо явно что-то еще в коде сделать. Осталось узнать что именно.

В orfa2 есть готовый модуль для управления сервами https://github.com/open-robotics/orfa2
конкретно вот https://github.com/open-robotics/orfa2/ ... ervo_lld.c

О том что это тут forum69/topic10192.html


Rambler\'s Top100 Mail.ru counter