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

 
 
 
Reply to this topicStart new topic
> ШИМ Микроконтроллер ATMEGA16
badik
сообщение May 18 2013, 03:35
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 48
Регистрация: 29-11-06
Из: Екатеринбург
Пользователь №: 22 890



Начинаю работать с AVR. Есть опыт с Microchip. Приобрёл STK500.
Микроконтроллер ATMEGA16.
Вопрос ШИМ.
Мне нужно иметь 2 ШИМ.
Меня интересуют частоты до 300 кГц, десятки кГц.
Попробовал таймеры 0 и 1.
Тексты программы © не привожу, стандартные, есть готовые, работают нормально.
Но пока у меня десятки кГц.
У ATMEGA16 макс. частота 16 МГц.
Для таймера 0 по формулам из док-и макс. (предделитель 1) = 16 МГц / 256 = 62.5 кГц.
Как я понял таймер 0 это предел (Fast PWM)?
Для таймера 1 есть ещё ICR1 (Phase Correct PWM), если им поиграть?
Сделать предделитель 1, ICR1 как можно меньше - получу я частоты ШИМ первые сотни кГц?
Go to the top of the page
 
+Quote Post
badik
сообщение May 22 2013, 05:11
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 48
Регистрация: 29-11-06
Из: Екатеринбург
Пользователь №: 22 890



Разобрался сам. Как это обычно.
Для ATMEGA16 16 МГц таймеры 0/1 по прикидкам (Fast PWM) макс. частота получится порядка 130 кГц.
Хотя по док-и как я думал д.б. больше?
Я использую ШИМ чисто как источник сигналов. Поэтому у ATMEGA16 можно использовать таймеры 0/1 режим СТС.
Тогда частота получится сотни кГц.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение May 22 2013, 06:21
Сообщение #3


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Частота ШИМ зависит от двух параметров:
1. от значения предделителя F_CPU
2. от значения регистра, определяющего разрядность ШИМ

Следовательно частоты могут быть любыми - вплоть до четверти F_CPU при двухбитной разрядности ШИМ и предделителе = 1.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
=GM=
сообщение May 23 2013, 05:40
Сообщение #4


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(badik @ May 18 2013, 03:35) *
Мне нужно иметь 2 ШИМ. Меня интересуют частоты до 300 кГц.
Сделать предделитель 1, ICR1 как можно меньше - получу я частоты ШИМ первые сотни кГц?

Есть аврки с встроенным генератором ПЛЛ на 64 МГц, можно их попробовать, получите 8-битный шим 250 кГц.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение May 23 2013, 06:12
Сообщение #5


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(=GM= @ May 23 2013, 09:40) *
Есть аврки с встроенным генератором ПЛЛ на 64 МГц, можно их попробовать, получите 8-битный шим 250 кГц.
xMega ?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
muravei
сообщение May 23 2013, 06:21
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(demiurg_spb @ May 23 2013, 10:12) *
xMega ?

Тини 26 была, кажись...
Go to the top of the page
 
+Quote Post
ARV
сообщение May 23 2013, 06:26
Сообщение #7


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

Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581



Цитата(muravei @ May 23 2013, 10:21) *
Тини 26 была, кажись...
не только. AT90PWM3B например тоже sm.gif и еще некоторые


--------------------
Я бы взял частями... но мне надо сразу.
Go to the top of the page
 
+Quote Post
=GM=
сообщение May 23 2013, 09:45
Сообщение #8


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(demiurg_spb @ May 23 2013, 05:12) *
xMega ?

На вскидку: ATmega25/45/85, ATtiny261/461/861, ATmega16/32/64M1, ATmega16/32U4. Ну и хмеги конечно.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение May 23 2013, 09:54
Сообщение #9


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Делал я несколько проектов для ATmega16 и не натыкался на PLL...
Аааа, понял вы про m1 - с ней не сталкивался.

Вы вместо ATmega25/45/85 наверное имели в виду ATtiny25/45/85?
Т.к. я не нашёл мег с такой маркировкой.

Похоже что эту высокую частоту можно лишь на 8-10 битные таймеры подавать, а я уже губу раскатал на 16-ти битный ШИМ...


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post

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

 


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


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