ШИМ и atmega

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: ШИМ и atmega

Сообщение YS »

зачем писать заного?
Дело в моей лени. Проще написать свой код, чем серьезно разбираться в чужом... :))

Вот, кстати, видео работы RGB контроллера.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Реклама
m210
Прорезались зубы
Сообщения: 218
Зарегистрирован: Сб окт 02, 2010 19:06:46
Откуда: Красногорск

Re: ШИМ и atmega

Сообщение m210 »

YS писал(а): Вот, кстати, видео работы RGB контроллера.
На видео же 12В лента?
А как Вы ее запитали без использования ULN2003? Даже транзисторов нет :shock:
Реклама
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: ШИМ и atmega

Сообщение YS »

На видео же 12В лента?
Ну, почти. 12В линейка в трубке.
Так все правильно. Я же говорил, RGB контроллер. Вот он как раз и управляет линейкой RGB светодиодов.
А как Вы ее запитали без использования ULN2003? Даже транзисторов нет
"Есть многое на свете, друг Горацио, что объяснить способны лишь немногие..." :)))

Шутка. На самом деле транзисторы есть. Там стоят IRLML2803. Но их почти незаметно... :))

Вот, как обещал: проект в AVR Studio, на С (AVR-GCC), видео работы там же.

http://letitbit.net/download/60900.6dac ... o.zip.html

Светодиод подключен к OC0A (PD6, 12 вывод) через резистор 220 Ом. Параллельно ему (светодиоду) стоит конденсатор 0.1мкФ для фильтрации. Как видно на видео, все прекрасно работает.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
m210
Прорезались зубы
Сообщения: 218
Зарегистрирован: Сб окт 02, 2010 19:06:46
Откуда: Красногорск

Re: ШИМ и atmega

Сообщение m210 »

YS писал(а):
http://letitbit.net/download/60900.6dac ... o.zip.html

Светодиод подключен к OC0A (PD6, 12 вывод) через резистор 220 Ом. Параллельно ему (светодиоду) стоит конденсатор 0.1мкФ для фильтрации. Как видно на видео, все прекрасно работает.
Спасибо большое, буду разбираться :))
Реклама
Эиком - электронные компоненты и радиодетали
m210
Прорезались зубы
Сообщения: 218
Зарегистрирован: Сб окт 02, 2010 19:06:46
Откуда: Красногорск

Re: ШИМ и atmega

Сообщение m210 »

мда, в моем МК явно проявляется какая то ерунда, светодиод разгорается медленно, как будто там 1Mhz а не 8, хотя этот МК кроме 8Mhz внутреннего генератора, ничего другого не имеет(фьюзы заводские, да и с калькулятором сравнивал, стоит вроде бы 8Mhz), ну и светодиод не гаснет, видимо кирдык МКу, а жаль
Реклама
Аватара пользователя
radio-kot
Собутыльник Кота
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Re: ШИМ и atmega

Сообщение radio-kot »

читать даташит !
Будете проходить мимо- проходите!
Реклама
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: ШИМ и atmega

Сообщение YS »

мда, в моем МК явно проявляется какая то ерунда, светодиод разгорается медленно, как будто там 1Mhz а не 8, хотя этот МК кроме 8Mhz внутреннего генератора, ничего другого не имеет(фьюзы заводские...
Если фьюзы заводские, то он и работает на 1МГц! Ибо заводская установка - 8МГц внутренний генератор + фьюз CKDIV8 активен !!!

Все это написано в даташите.
читать даташит !
+100 !

И да, Вы конденсатор параллельно светодиоду ставили? Все дело в нем. Нужно фильтровать ШИМ, ибо светодиод слишком безынерционен, и отзывается даже на самые короткие импульсы (OCR=0). А конденсатор исправляет это.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
m210
Прорезались зубы
Сообщения: 218
Зарегистрирован: Сб окт 02, 2010 19:06:46
Откуда: Красногорск

Re: ШИМ и atmega

Сообщение m210 »

radio-kot писал(а):читать даташит !
Больше всего на свете мне сейчас нужны такие безинформативные посты!
И раз уж на то пошло, то тогда будет проще продолжать работать с 8й мегой, у которой все интуитивно понятно и все всегда работает без лишних танцев с бубном.
Да и кстати говоря как раз после перехода с 8й меги на 48ю сразу же просек что там нет такой обширной возможности менять частоту внутреннего кварца и в том же даташите и вычитал что 48я мега работает только с 8Мhz и калькулятор фьюзов тоже даже не намекал на существование этого деления на 8.
radio-kot писал(а):И да, Вы конденсатор параллельно светодиоду ставили? Все дело в нем. Нужно фильтровать ШИМ, ибо светодиод слишком безынерционен, и отзывается даже на самые короткие импульсы (OCR=0). А конденсатор исправляет это.
Вы как всегда правы :) Поставил его и все заработало как надо, хотя тут опять же "плюс" к atmega8, где для полного гашения светика не нужны никакие доп. элементы, ну да ладно, за 4й канал ШИМ приходится платить гемороем...
Спасибо Вам за помощь, теперь во всем разобрался :))
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: ШИМ и atmega

Сообщение YS »

m210 писал(а):
radio-kot писал(а): И да, Вы конденсатор параллельно светодиоду ставили? Все дело в нем. Нужно фильтровать ШИМ, ибо светодиод слишком безынерционен, и отзывается даже на самые короткие импульсы (OCR=0). А конденсатор исправляет это.
Э-э-э?.. :)
в том же даташите и вычитал что 48я мега работает только с 8Мhz и калькулятор фьюзов тоже даже не намекал на существование этого деления на 8.
Калькулятор фьюзов и не должен ни на что намекать. А вообще, фьюзы лучше всего считать руками. Так надежнее всего.

Вы плохо читали даташит.
8.2.1 Default Clock Source

The device is shipped with internal RC oscillator at 8.0MHz and with the fuse CKDIV8 programmed,
resulting in 1.0MHz system clock.
The startup time is set to maximum and time-out
period enabled. (CKSEL = "0010", SUT = "10", CKDIV8 = "0"). The default setting ensures that
all users can make their desired clock source setting using any available programming interface.
Раздел System Clock and Clock Options, стр. 27

Кроме того, как видно, "внутреннего кварца" нет. Внутри RC генератор.
Спасибо Вам за помощь, теперь во всем разобрался
Не за что. :) И все же, читайте даташит внимательно. :) :beer:
Разница между теорией и практикой на практике гораздо больше, чем в теории.
m210
Прорезались зубы
Сообщения: 218
Зарегистрирован: Сб окт 02, 2010 19:06:46
Откуда: Красногорск

Re: ШИМ и atmega

Сообщение m210 »

YS писал(а):
m210 писал(а):
Э-э-э?.. :)
Ну да, случайно так получилось, сорри :)))

А по поводу калькулятора - там просто можно выбрать 8Mhz и 128kHz, видимо беда калькулятора что не указали 1Mhz. А в ручную я считать не умею :)
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: ШИМ и atmega

Сообщение YS »

А в ручную я считать не умею
27.2 Fuse Bits, стр. 285 даташита.

Я вообще не понимаю, чего вокруг них такая неразбериха и где там ужас на крыльях ночи.

На самом деле все просто:

Fuse-бит есть ничто иное, как бит в одном из байт в специальной области памяти.

Все фьюз-биты умещаются в три специальных байта (по факту в два; в расширенном всего одно значение): расширенный, младший и старший.

0 означает для фьюза активное, рабочее состояние, 1 - неактивное (а всякие калькуляторы и GUI только вносят путаницу).

Следующие фьюзы ВСЕГДА должны быть такими (если, конечно, у Вас нет параллельного программатора):

RSTDISBL=1 (неактивен) - этот фьюз позволяет ценой отключения RESET получить еще один пин в/в. Но при отключенном выводе сброса невозможно внутрисхемное программирование. Если он активирован, это состояние лечится параллельным программатором.

SPIEN=0 (активен) - опять же, отвечает за возможность последовательного программирования, лечится так же.

Еще можно отметить фьюзы DWEN и WDTON, но это уже к даташиту. Они не несут никаких катастрофических последствий, но могут удивить.

Остальные фьюзы безопасны.

Почти все программаторы позволяют менять фьюзы по одному, при этом не беспокоясь о сохранении остальных. Однако, рассмотрим пример с явной установкой фьюзов:

Код: Выделить всё

avrdude.exe -p m168 -c ftbb -P ft0 -e -B 4800 -U lfuse:w:0xF7:m
Младший (lfuse) байт фьюзов - 0xF7. В двоичной системе - 1111 0111

По таблице из ДШ видим:

CKDIV8=1
CKOUT=1
SUT1=1
SUT0=1
CKSEL3=0
CKSEL2=1
CKSEL1=1
CKSEL0=1

Откуда видно, что этой установкой отключается деление частоты, МК переключается на внешний кварц с полным размахом (8.4 Full Swing Crystal Oscillator, стр 30 ДШ) и делается еще пара не таких значительных установок типа времени сброса и т.п.

Да, есть еще Lock-биты - это не фьюзы. Они отвечают за залочивание прошивки/данных. И вот их лучше совсем не трогать - они не лечатся.

Вот так, вперед и с песней. Вы таки мне не поверите, но даташит чрезвычайно полезная штука! :)))
Последний раз редактировалось YS Ср май 11, 2011 14:29:11, всего редактировалось 1 раз.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
m210
Прорезались зубы
Сообщения: 218
Зарегистрирован: Сб окт 02, 2010 19:06:46
Откуда: Красногорск

Re: ШИМ и atmega

Сообщение m210 »

YS писал(а):
Вот так, вперед и с песней. Вы таки мне не поверите, но даташит чрезвычайно полезная штука! :)))
Спасибо, учту :)))

Ну и наверно последний вопрос на ШИМ, у вас где светодиодная лента, управляемая через транзистор на каждый вход, нужно ли там использовать тот самый конденсатор 0.1мкФ? или лента сама по себе будет гаснуть на 100%? :)
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: ШИМ и atmega

Сообщение YS »

нужно ли там использовать тот самый конденсатор 0.1мкФ?
Это необязательно. Я подключил так: порт МК-резистор 10К-MOSFET. При этом роль интегратора играют резистор и емкость затвора ПТ. Все отлично загорается и гаснет. :)
Разница между теорией и практикой на практике гораздо больше, чем в теории.
m210
Прорезались зубы
Сообщения: 218
Зарегистрирован: Сб окт 02, 2010 19:06:46
Откуда: Красногорск

Re: ШИМ и atmega

Сообщение m210 »

ок, буду знать:) Спасиб :)
zorg2440
Родился
Сообщения: 1
Зарегистрирован: Ср май 11, 2011 11:58:01

Сообщение zorg2440 »

Люди, помогите, пожалуйста, сделать таймер на ATmega со световой и звуковой индикацией... Подскажите как создать проект в СVR чтобы моргали лампочки, т.е. прошивку... Очень надо! Заранее благодарен!
Аватара пользователя
radio-kot
Собутыльник Кота
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Re: ШИМ и atmega

Сообщение radio-kot »

Посмотрите www.proavr.narod.ru :beer: там в задачах есть таймер.
Будете проходить мимо- проходите!
Belerafon
Встал на лапы
Сообщения: 110
Зарегистрирован: Вс май 10, 2009 18:23:45

Re: ШИМ и atmega

Сообщение Belerafon »

Объясните мне, почему МК начинает тормозить после включения ШИМ, код похож на код из начала темы, пока не загружу значения в регистры все отлично крутится(там еще опрос кнопок сделан) как только загружаю значния в ШИМ регистры то как будно программа начинает работать в несколько раз медленнее. МК atmega8 использую все 3 регистра(для диммера)
Закрыто

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