BAM альтернатива программному ШИМу

Обсуждаем контроллеры компании Atmel.
Ответить
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2309
Зарегистрирован: Пт июл 17, 2009 07:34:07
Откуда: Свердловская обл.

Сообщение uwrtey »

Поиском пошарил, вроде тем дублей нету, хотя вроде Если что, то сильно не пинайте.

Здрасте, давненько я тут ни чего не писАл.
Я недавно начал изучать программирование МК семейства АВР. ( пытаюсь писать на Ассемблере )
И на большинство моих вопросов мне отвечает уважаемый ВитГо, которого я уже наверняка замучал...
Я еще многово не знаю и не умею, и по-этому решил задать вопрос Вам.

Микроконтроллер ATtiny2313.
Необходимо реализовать управление двумя моторами. ( два канала )
Аппаратный ШИМ таймера_1 этого сделать не сможет - он будет занят совсем другим..
У меня остался таймер_0, но его аппаратный ШИМ мне не подходит!
Программный ШИМ я еще не изучал и это для меня пока темный лес...
ВитГо мне посоветовал посмотреть в сторону BAM ( http://bsvi.ru/bam-alternativa-shimu/ )
Почитал, интересно, и самое главное - это намного проще программного ШИМ ( проще для ресурсов МК и естественно для того, кто будет писать для этого МК )
Но к сожалению, автор, излагает свою мысль слишком поверхностно, ориентируясь на читателя с достаточным опытом программирования МК.


Вот мне и не понятно, как реализовать этот самый BAM?
Пример там есть, но он на СИ, а я, как уже говорил выше, пытаюсь писать на АСМЕ
В какой режим нужно ввести таймер_0, какие ресурсы МК нужно еще задействовать? Как организовать несколько каналов?
В общем мне не ясна сама теория ( я не понял сам принцип генерации сигнала )

Объясните пожалуйста, что мне нужно организовать и как, а то я что-то сам допетрить не могу..
Можно бы конечно и пример кода глянуть на АСМЕ, но лучше всего объясните теорию.
А написать код я попробую сам.

Заранее благодарен ВСЕМ ответившим.
не зная броду не лезь к вольтмоду
Реклама
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 309
Зарегистрирован: Ср мар 31, 2010 11:45:58
Откуда: Славянск

Сообщение Moto_v3x »

Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2309
Зарегистрирован: Пт июл 17, 2009 07:34:07
Откуда: Свердловская обл.

Сообщение uwrtey »

это я видел, теории там нет. :(
не зная броду не лезь к вольтмоду
Встал на лапы
Аватара пользователя
Сообщения: 87
Зарегистрирован: Пн мар 30, 2009 07:38:28
Откуда: Бурятия

Сообщение PANYTA »

Реклама
Эиком - электронные компоненты и радиодетали
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

в статье http://radiokot.ru/cherdak/03/ есть готовый код на ассемблере АВР :)
Ставим плюсы: )
Реклама
Друг Кота
Аватара пользователя
Сообщения: 15749
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

С движками не возился, но по опыту работы со светиками могу сказать, что при несущей в пределах 120 Гц при фиксированных уровнях BAM может иметь преимущество перед ШИМ только в виде экономии "машинного времени" для других программ МК, и то с потерей младших уровней выходного сигнала.
Одной из "пакостей" при использовании BAM является эффект "мерцания" при режимах плавного изменения выходного сигнала.
:roll:
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2309
Зарегистрирован: Пт июл 17, 2009 07:34:07
Откуда: Свердловская обл.

Сообщение uwrtey »

Спасибо, мужики. :beer:
не зная броду не лезь к вольтмоду
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2309
Зарегистрирован: Пт июл 17, 2009 07:34:07
Откуда: Свердловская обл.

Сообщение uwrtey »

BOB51 писал(а):С движками не возился, но по опыту работы со светиками могу сказать, что при несущей в пределах 120 Гц при фиксированных уровнях BAM может иметь преимущество перед ШИМ только в виде экономии "машинного времени" для других программ МК, и то с потерей младших уровней выходного сигнала.Одной из "пакостей" при использовании BAM является эффект "мерцания" при режимах плавного изменения выходного сигнала.
Не знаю даже, движки мерцать явно не будут. Нагрузка индуктивная, получится какая ни-будь RLC цепь, думаю что с двигателями все будет намного лучше чем со светодиодами.
не зная броду не лезь к вольтмоду
Друг Кота
Аватара пользователя
Сообщения: 15749
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Зато от случайного подергивания не гарантировано...
Смотря в какой момент времени возникнет "провал" или "слипание" - от рывка до полого останова или сбоя позиционирования. Хоша ежли движок с хорошим массивным ротором или много-многооборотным редуктором дожет и незаметно будет.
:roll:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2309
Зарегистрирован: Пт июл 17, 2009 07:34:07
Откуда: Свердловская обл.

Сообщение uwrtey »

эти моторы есть двигатели модели соосного вертолета - они много-оборотистые :)
не зная броду не лезь к вольтмоду
Друг Кота
Аватара пользователя
Сообщения: 15749
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Тогды другой "гвоздик" - у программного ШИМ (ВАМ) ограничена несущая частота - это не аппаратный узел. :cry: Хотя если так до килогерца и на одном - двух каналах ... но какой-то из таймеров прийдется использовать хотя-бы как генератор тайм-сетки + прерывание по "окну обработчика ШИМ" с блоком контроля предподготовленного задания. :roll:
Ответить

Вернуться в «AVR»