ШИМ АТМЕГА,изменение частоты.

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
кошак
Родился
Сообщения: 16
Зарегистрирован: Пт сен 05, 2008 05:15:14

ШИМ АТМЕГА,изменение частоты.

Сообщение кошак »

При использовании 2-го таймера меги в режиме ШИМ можно регулировать скважность,а можно ли программой изменять частоту,если да-то как ?
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Re: ШИМ АТМЕГА,изменение частоты.

Сообщение tych »

кошак писал(а):При использовании 2-го таймера меги в режиме ШИМ можно регулировать скважность,а можно ли программой изменять частоту,если да-то как ?

Можно менять коэф. делителя перед таймером - посмотри задачу 8 про ШИМ в моей домашней страничке.

Примеры есть и в апноутах по электроприводу АС моторов - там частота меняется. Список апноутов на стр. 7 у меня.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
YurkaM
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Пн сен 01, 2008 14:49:03
Откуда: Казахстан

Сообщение YurkaM »

Можно ещё програмно менять верхнюю границу счёта. Причём в некоторых режимах ШИМ от 2 и до 65525 (для 16-разрядных таймеров). Правда при этом вместе с частотой будет меняться и разрядность ШИМ.
кошак
Родился
Сообщения: 16
Зарегистрирован: Пт сен 05, 2008 05:15:14

Сообщение кошак »

кошак
Родился
Сообщения: 16
Зарегистрирован: Пт сен 05, 2008 05:15:14

Сообщение кошак »

Но ,как я понял,такими способами меняется только ширина ,а не частота,я хочу сделать генератор с регулируемой частотой и скважностью,как это сделать ,используя таймеры ?
YurkaM
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Пн сен 01, 2008 14:49:03
Откуда: Казахстан

Сообщение YurkaM »

кошак писал(а):Но ,как я понял,такими способами меняется только ширина ,а не частота...

Неправильно понял. Таймер считает с частотой, которая зависит от кварца и делителя. Дальше. Полный период ШИМ (ну и частота, естественно) зависит от того, до скольки будет считать таймер (TOP). Так вот это значение TOP в нескольких режимах (например режим PWM, Phase and Frequency Correct) берётся из регистров (ICR1 или OCR1A для Меги16, например), в которые можно програмно записать любое значение.

Вот, например, как считается частота ШИМ для режима Phase and Frequency Correct:
Fpfcpwm=Fclc/(2*N*TOP)

Ну а ширину импульса регулируем записью нужного значения в OCRxx

А вообще всё есть в даташите...
Gogo55
Открыл глаза
Сообщения: 44
Зарегистрирован: Вс сен 17, 2006 14:39:26
Откуда: Bulgaria
Контактная информация:

Сообщение Gogo55 »

И я тоже интересуется за ШИМ на меге,или другои МК-АВР,можно ли изведет 4 канала ШИМ ,
каторий управляется от 4 входа с генераторым импулси,и изходнии шим как можно регулироватся в %,за кажды канал поотделно.Вожможно ли ета на 1Мк, или надо несколко 2-4МК.Тоест за кажды канал по 1МК,или можно 4 канал управление на 1МК и какои можно бы етот МК-мега16?
Идея сделат управление на 4 моторчиков и кажды моторчик управлят самостоятелно с генератор импулсами примерная честота управления от 0 до 2КХц,а изходящий ШИМ харашо было быт над 20КХц.
Если някому имеет сорс на .асм подобнии,или примерны кусочек кода на .асм???
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Сообщение tych »

Gogo55 писал(а):И я тоже интересуется за ШИМ на меге,или другои МК-АВР,можно ли изведет 4 канала ШИМ ,
каторий управляется от 4 входа с генераторым импулси,и изходнии шим как можно регулироватся в %,за кажды канал поотделно.

Аппаратных ШИМ 6 штук в меге48 и меге128

Програмно-аппаратный шим на 8 выходов смотри в задаче 13
в моей домашней страничке.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
MetEl
Вымогатель припоя
Сообщения: 543
Зарегистрирован: Чт окт 18, 2007 16:45:30
Откуда: из Питера

Сообщение MetEl »

кошак писал(а):Но ,как я понял,такими способами меняется только ширина ,а не частота,я хочу сделать генератор с регулируемой частотой и скважностью,как это сделать ,используя таймеры ?

Для увеличения частоты, прейдётся увеличивать начальное значение счёта(при направлении счёта вверх (прибавляя)). И пропорционально и значение (уровень, момент смены) перехода выходного сигнала. При этом, укорачивая диапазон заполнение ШИМ
простое чмо, выдумщик
YurkaM
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Пн сен 01, 2008 14:49:03
Откуда: Казахстан

Сообщение YurkaM »

MetEl писал(а):...Для увеличения частоты, прейдётся увеличивать начальное значение счёта(при направлении счёта вверх (прибавляя)).
Интересно.. И как это делать в режиме ШИМ??
И пропорционально и значение (уровень, момент смены) перехода выходного сигнала.
А здесь согласен. Естественно, чтобы отношение t/T осталось постоянным, придётся вместе с частотой (меняя T) менять и момент переключения, т.е. t.
MetEl
Вымогатель припоя
Сообщения: 543
Зарегистрирован: Чт окт 18, 2007 16:45:30
Откуда: из Питера

Сообщение MetEl »

вы что, в регистр TCNTx ничего не прописываете?
простое чмо, выдумщик
Аватара пользователя
AndyWorld
Прорезались зубы
Сообщения: 209
Зарегистрирован: Вт сен 30, 2008 09:23:14
Откуда: Краснодарский край

Сообщение AndyWorld »

Програмно-аппаратный шим на 8 выходов смотри в задаче 13
в моей домашней страничке.[/quote]

Здравствуйте все! Я тут почитал несколько тем в форуме про ШИМ. О светодиодах и данную. Меня так же интересует даная функция в МК. Но в ваших упражнениях и задачах, кстати, огомное вам спасибо за этот курс, все написано на СИ - это меня немного путает. В задаче 8 мне удалось перелопатить код под АСМ и один шим заработал. Но запустить два... у меня ничего не вышло. Три дня ищу инете примеры и не могу найти нужные мне статьи. А нужно мне 3 ШИМ запустить!!! Но частоту не нужно управлять. Кстати в ДШ по МК АТинни 2313 написано "Four PWM channels". Что это значит? Четыре ШИМ канала? Или всетаки ШИМ один, только его можно вывести на разные ноги. У атмеги8 написано "Three PWB Channels" У Атмеги 8535 так же как и у 2313 "Four PWM channels". И где правда? Какой же мне выбрать МК для управления 3-ми ШИМ сигналами. Я по ДШ мучаю 2313 и пытаюсь из нее извлечь хотябы 2 ШИМ сигнала. Может я на ложном пути?
MetEl
Вымогатель припоя
Сообщения: 543
Зарегистрирован: Чт окт 18, 2007 16:45:30
Откуда: из Питера

Сообщение MetEl »

Это не правда, это умелое преподнесение не точной информации.
Разберёшься только когда купишь.
Это называется умелое коммерческое решение, так наживают капитал.
Изображение
Два блока аппаратных счётчиков имеюм логические схемы для вывода ШИМ на прямую из счётчика. В каждом по 2-а канала. А всего выводов 4-е (2*2) если посчитать. Полноценный блок ШИМа это один счётчик и один выход(или более). Тут сделали два, на один счётчик. Это и хорошо, как раз для мостовой схемы. Но не указано!
А что если не мостовая схема, а десительно 4-е счётчика надо. Мне вот 3-и сейчас нада будет. У что? Каждый датаШИТ изучать, что он на самом деле выдаёт?
простое чмо, выдумщик
Аватара пользователя
AndyWorld
Прорезались зубы
Сообщения: 209
Зарегистрирован: Вт сен 30, 2008 09:23:14
Откуда: Краснодарский край

Сообщение AndyWorld »

Это значит что.... Заряжем один счетчик т.е. настраиваем предделитель на нужную частоту. Выбираем тип ШИМа 8,9,10 бит
Зансим даные в регистры H и L одного и другого канала, запускаем ШИМ. Так? При использовании более 2-х ШИМ нужно использовать 2 счетчика или все так же один.? Я про Атмегу 8535. У нее точно 3 ШИМ. Два 8бит счетчика и один 16 бит. И что тут делать, Как их настроить не врублюсь. В глазах уже рябит от аглицких слов ДШ.
MetEl
Вымогатель припоя
Сообщения: 543
Зарегистрирован: Чт окт 18, 2007 16:45:30
Откуда: из Питера

Сообщение MetEl »

Врубись сначала, в то что обведено жёлтым цветом на картинке, или посмотрите в ДШ.
простое чмо, выдумщик
YurkaM
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Пн сен 01, 2008 14:49:03
Откуда: Казахстан

Сообщение YurkaM »

Упс.. удалил
Последний раз редактировалось YurkaM Вт сен 30, 2008 14:10:18, всего редактировалось 1 раз.
YurkaM
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Пн сен 01, 2008 14:49:03
Откуда: Казахстан

Сообщение YurkaM »

MetEl писал(а):вы что, в регистр TCNTx ничего не прописываете?
В режиме ШИМ писать что-то в TCNTxx??
Ну-ну..
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Сообщение tych »

AndyWorld писал(а): Три дня ищу инете примеры и не могу найти нужные мне статьи.

Книжку скачай - библиоека в моей домашней страничке.

AndyWorld писал(а): в ДШ по МК АТинни 2313 написано "Four PWM channels". Что это значит? Четыре ШИМ канала?

Да ! и величину ШИМ можно установить на каджом из 4 каналов ИНДИВИДУАЛЬНО.

AndyWorld писал(а): И где правда?

В даташите и у меня в домашней страничке.

AndyWorld писал(а): Какой же мне выбрать МК для управления 3-ми ШИМ сигналами.

ATmega16 - ОЧЕВИДНО !
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Аватара пользователя
AndyWorld
Прорезались зубы
Сообщения: 209
Зарегистрирован: Вт сен 30, 2008 09:23:14
Откуда: Краснодарский край

Сообщение AndyWorld »

Вобщем, почитал я вчера на сон грядущий занятие 8 и 13. Поробовал сгенерить код для Меги16 на два сигнала. Все конечно получилось Протеус весело замигал двумя ногами ОС1А, ОС1В. Все регулируется, все хорошо. Но где же взять третий сигнал? Генерю код заново, но подключаю Таймер 2, ставлю что он работает с частотой кварца, имеет не инвертированный выход и то что он Fast PWM top FFh. Все генериться как и прежде но выход ОС2 молчит!!! Как его запустить? С Мегой 128 понятно у него выход А.В.С и все прекрасно работает. Даже пробовал на АТини 2313 сгенерить код. Там на таймерах как раз по два порта и подключается но задействуются почему-то три. Протеус, правда, заругался так как у него нет модели Тини2313 а только старая версия в которой один ШИМ. Кстати, где можно взять модель для Протеуса АТини2313? И как же всетаки на 16-й меге запустить ОС2?
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Сообщение tych »

AndyWorld писал(а): Но где же взять третий сигнал? Генерю код заново, но подключаю Таймер 2, ставлю что он работает с частотой кварца, имеет не инвертированный выход и то что он Fast PWM top FFh. Все генериться как и прежде но выход ОС2 молчит!!!

Для начала выложить ваши проекты сюда в виде архива.

Вы ножку 3-го ШИМ сделали ВЫХОДОМ ???? как написано в задаче 8 !

AndyWorld писал(а):Кстати, где можно взять модель для Протеуса АТини2313? И как же всетаки на 16-й меге запустить ОС2?

Можно только PROTEUS 7.4 взять с новыми моделями и рядом с прошлым протеусом поставить на ПК.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»