Предложите свои новые, интересные темы, мы с удовольствием почитаем. Ну а пока их нет читаем то, что есть. Автору спасибо, ничего не забыл и про теорию написал, и про практику.
Я использовал программатор USBasp, программа AVRdude(есть по ссылке сверху) + оболочка, у меня было собрано одно устройство на ATMEGA8 в нем были предусмотрены вывод для программатора так и прошил.
Если Вас интересует как вообще в целом прошивать МК, то могу посоветовать «безотказный» метод «пять проводков», если у Вас есть LPT порт и WindowsXP (и младше) (ну или Linux любой версии/дистрибутива).
Если хотите прошивать на USB программаторе, то я использовал AVR910. Очень удобно, правда, если устройство будет сбольшим током потребления, то начинаются не очень приятные моменты.
Если у Вас есть хоть какие-нибудь навыки в пайке, то можете попробовать собрать AVR910. В принципе, схемка не очень и сложная. Зато его хватит буквально на всю жизнь, чтоб прошить любой (!) ISP микроконтроллер семейства AVR. Вот Вам на всякий случай ссылка. Если будут вопросы, можете напрямую писать мне в личку.
Мда, тема, конечно, многократно уже рассматривалась. Но тем не менее, автор старался. Хотя, уважаемый Great_Beaver, постарайтесь в следующий раз выбрать тему по оригинальнее ;)
Было бы неплохо написать пару статей с использованием ARM или ПЛИС. Таких статей немного не хватает на Хабре.
Автору респект очень оригинально, скажите а можешь цепь питания сделать от usb? И входы для флешек и так далее, была бы универсальная лампа на рабочий стол
Питанию от одного usb не должно превышать 500 мА, а при моих настройках она потребляет примерно 800мА так что чтобы питать такую лампу придется сильно понизить мощность, а если еще и другие устройства подключить по usb то потребление будет еще больше. Можно сделать usb хаб, но питание придется делать или от сети или от нескольких портов usb.
Ну за такую лампу максимум я думаю можно платить 650 Если бы такая цена получилась было бы круто + простенький интернет магазин и я думаю бизнес бы пошел, снизить цену можно с помощью большого объема закупок.
Переливающуюся лампу не планируете делать? а то было бы интересно
Например — при включении она горит любым из RGB цветом, затем когда подносишь руку, она начинает медленно переливаться цветами, для фиксации цвета — поднести руку, для обратного запуска переливания — поднести руку.
Вообще в лампе есть режим переливания, но ваша идея мне намного больше нравится. Тем более для её осуществления требуется лишь не значительное изменение прошивки. Спасибо за идею )
Поставить сенсор освещенности, и если темнота — переключать лампу в ночной режим (более плавная смена цвета, или же сине-голубые оттенки, избегая красных) (сенсор должен стоять за пределами стакана, что бы его закрытие не влияло на показания)
Еще как вариант сделать лампу которая изменяет цвет в зависимости от времени.
Начиная с слабо желтого (рассвет)
Днем — красная
Ближе к вечеру сине-зеленые оттенки
Ночью — синий
Если будите продвигаться в направлении продажи, я может буду первым покупателем )
Спасибо очень интересные идеи, для работы в режиме часов опять же таки только изменить прошивку + можно добавить простую индикацию времени и будут уже полноценные часы. А с сенсором освещенности нужно только датчик подобрать.
Более-менее адекватный светодиод + ШИМ от Меги == вскорости дохлый светодиод (по опыту поджигания диода из dvd-rw =)), не гнушайтесь использовать драйвера…
В гугл «лампа-хамелеон», всё уже давно сделано. У проектов на Atmel'е есть такая черта — они почти всегда повторяют уже существующие разработки =)) не в обиду, просто низкий порог вхождения в разработку с атмеловскими МК (и тем паче с Ардуиной) действительно поощряет сначала сделать, а потом уже подумать, не проще ли — купить аналог.
Мне еще попались сегодня часики, там подсветка включалась по хлопку, вот было бы интересно подключать питание к лампе по хлопку, как дополнительный вариант включения лампы. Вошел в комнату, хлопнул и лампа начала переливаться.
Я лично все заказываю через посредника с taobao.com. Раньше заказывал в магазине ekits.ru там немного дороговато. Еще можно посмотреть mkpochtoi.narod.ru там вроде дешевле но оттуда не заказывал. Так же можно посмотреть www.chipdip.ru/ но там кажись дорого.
Терраэлектроника, в первую очередь, у них был киевский офис. Во вторую — несколько посредников в Киеве, в третью — заказывай с Digikey напрямую, выйдет дешевле (если укртаможня пропустит крупную партию и если US выпустят — на ЛОРе люди ругались, что Pandaboard запретили к экспорту).
Автору респект! Спасибо за статью, сейчас у меня в гараже идет модернизация многоярусной синтезаторной стойки, я хотел поставить на неё светодиоды после того как выпилю и заменю хлябающие крепления и подварю основания. Теперь даже не сомневаюсь что поставлю!
Я начинал изучение с этого сайта. Все очень подробно и доступно написано. А в дальнейшем для изучения рекомендую собирать понравившиеся устройства по мануалам, очень поучительно.
Собрал ваш вариант лампы, пока что без инфрокрасного диода и приемника. Прошил вашей прошивкой (почему-то фьюзы в проекте CVAVR не были выставлены), выставив фьюзы на 8 Мгц. При включении лампа быстро моргала без какой либо плавности, что не удивительно при выставленном значении delay в 3 мс. Поправил delay на 40 и увидел плавные переливы.
Вопрос такой: ошибка вкралась в частоту с которой надо прошить МК или же в delay выставленный в программе? В ближайшем времени буду собирать оставшуюся часть схемы и боюсь не та частота повлияет на работу ик-светодиода и приемника. И попутно спрошу, как калибрануть функцию Gen(), если не заработает ик-светодиод и приемник?
Еще один ньюанс. Почему использовались биполярные транзисторы? Дают ли они светодиодам номинальный ток в 350 мА? Я не нашел bc337 и поставил вместо них аналоги кт503, но ток больше 200 мА они не давали, и я поставил полевые транзисторы N канала (к ним можно, думаю, ножки контроллера без сопротивления подцепить) — они дают ток по полной :)))
Я не уверен но по-моему фьюзы в проекте не сохраняются. delay применяется на каждой интеграции цикла, то есть 255 раз, получается перелив равен 775 мс, так что если у вас было быстрее то надо искать проблему, я думаю это может быть связано с тем что вход на котором должен быть ик-приемник подтянут на + (или на минус, к сожалению уже не помню какой сигнал управляющий), поведение похоже, иначе если вы ничего не подавали на вход то лампа вообще не должна была переливается. Ик-светодиод и приемник скорее всего сразу не заработает, для калибровки необходимо менять значение константы в этой строке TCNT0=0xCA; (извиняюсь функция Gen() определяет число принятых пакетов до срабатывания, это сделано чтобы избежать случайных срабатываний) в ту или иную строну и смотреть осциллографом частоту которая идет на ик-светоиод, она должна быть равна частоте вашего приемника. А транзисторы применялись те что были под рукой ) Удачи вам, выложите фото того что у вас получилось, будет интересно посмотреть.
Спасибо за ответ. Если все доведу до ума, то выложу фото и возможно свою прошивку, вот только осциллографа нет. Хочу добавить понятие яркости, в Вашей прошивке оно определяется символом max, и сделать следующие режимы:
1. Плавные переливы всех цветов (возможно случайно) с текущей яркостью и выбор цвета;
2. Плавное изменение и выбор яркости;
3. Горит выбранный цвет с выбранной яркостью.
Поставил TSOP2136(и поменял TCNT0=0xCA; на TCNT0=0xC8;) и FYL 3014ir через сопротивление в 300 Ом, но никак не могу заставить его работать, хотя ик-приемник работает от самсунговского пульта. Частоту внутреннего резонатора тоже проверял — в прерывании таймера инкерментировал счетчик и через расчетные 10 минут моргал светодиодом и засекал секундомером. Разницу за 10 минут в 0.6 секунды можно списать на погрешность моей реакции. Тестером мерял напряжение на ик-светодиоде — сигнал есть. Может подскажете в какую сторону копать?
Что-то я тут совсем себя в угол загнал:) Уже совсем не понимаю как Вы расчитывали TCNT0 и как я получил 0xC8. Со свежей головой посчитал, получилось TCNT0=0x91. О результате отпишусь позже, пока не могу проверить.
RGB лампа