Программирование BASCOM
Меню сайта
Категории каталога
Мои статьи [115]
Наш опрос
Оцените мой сайт
Всего ответов: 1292
Главная » Статьи » Мои статьи

Цветомузыкальный медальон «Кошачий Глаз» («Cat's Eye»)
Цветомузыкальный медальон 
«Кошачий Глаз» («Cat's Eye»)



П р е д у п р е ж д е н и е. 

Устройство разработано по принципу «КАК ЕСТЬ» и автор не несёт ответственности за явный или не явный ущерб (сломанный компьютер, испорченное настроение, разбитый о стену девайс, сгоревший паяльник, облезший в результате шока хвост и т.д. из-за кривых лап, контуженой головы, купированного хвоста), причинённый в результате повторения девайса! 
Все опыты вы проводите на свой собственный страх и риск!

Отличительные особенности от других известных ЦМУ.
  • Зрелищность.
  • Компактность.
  • Законченность конструкции
  • Высокая повторяемость.
  • Минимум деталей.
  • Современный интерфейс для связи (USB)
  • Отсутствие инсталлятора и настройки софта.
  • Кроссплатформенность (XP, Vista, 7).
  • Большое количество каналов (18 - все свободные выводы контроллера).
  • Решён вопрос большого «экрана» при собственных малых габаритах.

Два варианта печатной платы – в обычном и smd исполнении порадуют как начинающих, так и более продвинутых радио Котов. Открытые и достаточно прокомментированные исходные коды будут интересны для самостоятельного конструирования, а готовое к использованию ПО – для тех, кто просто решит повторить конструкцию. В устройстве используется современная легко доставаемая  электронная база и светодиоды повышенной яркости.  Компьютер воспроизводит музыку, осуществляет обработку звуковой композиции – вычисляет спектр по частотам и производит логарифмирование. Он же формирует сигналы управления светодиодами через USB порт и питает устройство.

Как работает железо?

Устройство принадлежит к классу USB-HID (Human interface device). А это значит, что это устройство взаимодействия компьютера и человека. Также это значит, что вы можете подключать устройство без выключения компьютера, чего не скажешь об устаревших LPT и COM, которые к тому же постепенно исчезают с материнских плат. Также вы можете использовать компьютерные +5 B (до 500 мА) для ваших нужд. Устройство собрано на широко распространённом микроконтроллере фирмы ATMEL. Причём код есть и для более старой ATMEGA 8, и для более новых  ATMEGA 48/88. Конечно, можно было упростить входные цепи, используя контролер с встроенным USB, но тогда цена медальона выросла бы примерно вдвое, а то и больше! В USB уровень сигнала составляет 3,3 вольта, а уровни контроллера – 5-ти вольтовые. Поэтому для согласования в схеме устанавливаются стабилитроны D1, D2 и гасящие резисторы R4, R5. Для определения версии протокола USB 1.0 собран делитель напряжения на резисторах R1, R2. Цепочкой R3, C3 производится начальный сброс контроллера. Кварцевый резонатор с конденсаторами C4, C5 служат для тактирования контроллера. Резонатор может также быть 15 МГц, но для этого необходимо внести соответствующие изменения в исходном коде и перекомпилировать его. Другие частоты данная версия библиотеки контроллера не поддерживает!



Как смонтировано устройство?

Устройство собрано на круглой односторонней печатной плате диметром 52 мм. Получился своего рода медальон. Диаметр обусловлен не только компоновкой монтажа, но и размером корпуса, который удалось найти в домашнем хозяйстве. Мы заказываем питьевую воду в 20 – литровых бутылях, и крышки как нельзя лучше подходят для этой цели.

                       

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





Запаиваем детали, не забывая установить перемычку под контроллером. Для контроллера предусмотрена панелька, но можно и не устанавливать, если предварительно прошить. Светодиоды имеют полярность, будьте внимательны, чтобы не пришлось их перепаивать. Также обратите внимание на цвет светодиодов. Они у вас могут быть любые, но важно, чтобы их расположение на плате было аналогичным – три группы светодиодов шести цветов. USB – кабель обрезаем с нужной стороны и впаиваем в плату. Обычно провода имеют стандартный цвет: черный – масса, красный – питание, зелёный – данные (+) и белый – данные (-) . Но лучше перед монтажом прозвонить их на соответствие. 



Программируем контроллер. Устанавливаем правильно фус-биты.





Как работает софт устройства?

Windows 98, 2000, XP, Vista, 7 имеют встроеный HID-class driver, поэтому разработчику уже не нужно писать драйвер, что сберегает и время и силы. При первом подключении система обнаружит новое устройство и установит для него стандартные драйверы (HID). 
Если прошло нормально, в списке устройств (Пуск – панель управления – система – оборудование – диспетчер устройств) появится наше (VID-AAAA, PID-EF22).







Теперь запускаем исполняемый файл и проверяем работу медальона.



У вас что-то не заработало? Захват звука идёт со стерео микшера, и скорее всего, в микшере отключено стандартное устройство записи или установлен очень маленький уровень. Посмотрите на картинки ниже, и вы сможете исправить!





В Windows 7 существует проблема  - не так-то просто  найти стерео микшер.  
Чтобы включить микшер в Windows 7 нужно:
Заходим "Пуск - Панель управления – Звук”. В появившемся окне в любом свободном месте тыкаем правой кнопкой мыши и видим небольшое меню. В этом меню нужно поставить галку напротив пункта "Показать отключенные устройства” и "Показать отсоединённые устройства”. Затем перейти на вкладку "Запись”. Вы попадете в раздел записывающих звук устройств ОС Windows 7, среди устройств серым цветом будет обозначен "Стерео микшер”. Щёлкните на нем правой кнопкой мыши и выберите меню "Включить”. Теперь его нужно назначить устройством "по умолчанию". Если в системное трее (в нижнем правом углу) нажать на цветной динамик (Realtek HD) левой кнопкой мыши, выбрать вкладку «стерео микшер», то можно повысить громкость микшера или изменить другие настройки.





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

Обычно очень мало места уделяется описанию программного обеспечения. Подразумевается, что имея на руках схему и кое-как прокомментированные исходники, любой продвинутый Котяра сможет переделать устройство под свои нужды. В большинстве случаев код легче переписать заново, чем разбираться в чужом. Но ведь коды выкладываются для того, чтобы по ним учиться можно было…  
Значит и поговорить об этом стоит подробнее, обозначить проблемные места, словесно объяснить основные алгоритмы.
Так как наш медальон – устройство программно – аппаратное, и, тем более что программы написаны как со стороны компьютера, так и со стороны контроллера, следует разобрать обе стороны «медали». И протокол их взаимодействия тоже.
Пожалуй, стоит начать с компьютерного софта. Основная задача – захват звукового потока данных, вычисление спектра, логарифмирование сигнала и формирование управляющих выходных данных для микроконтроллера может быть реализовано на разных языках программирования.  Использование C+, C# и VBNET оправдано для более серьёзных проектов, к тому же последние требуют установленного фреймворка, что очень утяжеляет вес программы. Некоторое время назад я открыл для себя новый язык – Pure Basic. Несмотря на то, что постоянно пишу на вышеуказанных, взял на вооружения этого «малыша». Какие преимущества я увидел в для решения небольших задач? 
Во первых, быстрый исполняемый файл очень маленького размера, который может работать самостоятельно без дополнительных библиотек. 
Во вторых – наличие приятных в использовании библиотек для работы с USB и звуком.
В третьих – лёгкость в разработке. 
Вообщем, одна красота… 

Спорить по поводу какой язык лучше, ни с кем не буду. У меня есть давно устоявшееся мнение, что не язык определяет «крутость» программиста, а то, как он им владеет. 

Итак, качаем Pure Basic версии 4.41, устанавливаем. 

Не забываем установить библиотеки дополнительных функций! Копируем HID_Lib в папку UserLibraries установленного Pure Basic. Открываем наш проект. Рядом с файлом ColorMusic_1_0.pb обязательно должны быть bass.pbi, bass.dll, bass.lib. Запускаем на компиляцию (F5) и получаем результат – наше работающее приложение. 



Несколько слов о самой программе. 

При старте программа проверяет, не запущена ли она уже? Далее запускает таймер, который каждые полсекунды проверяет, подключено или отключено наше железное устройство. Инициализирует BASS библиотеку на запись и создаёт отдельный поток для обработки спектра сигнала. Здесь суммируются значения выборок фурье для каждого из каналов определённой частоты, определяется общий уровень сигнала, логарифмируется и рисуется спектр, а также подготавливаются данные для отправки через USB. 
Вывод данных на светодиоды в USB HID устройство состоит из отсылки трёх байт. OUT_C – данные в порт «C» контроллера, OUT_B + 64  - данные в порт «B» контроллера, OUT_D + 128  - данные в порт «D» контроллера. Здесь дополнительные слагаемые к OUT_B и OUT_D нужны для того, чтобы в контроллере явно определить, данные для какого порта пришли. В главном цикле проверяются события нажатия на кнопки и выхода из программы. Оболочка программы очень простая. Единственный регулятор позволяет подобрать желаемое максимальное количество включенных светодиодов. Кнопками можно выбрать 2 эффекта. В первом расклад цветовой гаммы соответствует такому значению: красный и оранжевый цвета – НЧ, желтый и зелёный – СЧ, синий и фиолетовый - ВЧ. Во втором изменение частотного диапазона последовательно включает светодиоды, начиная с HL1(НЧ) и заканчивая HL18(ВЧ). Спектроанализатор не только показывает частотный расклад, но и фиксирует срабатывание каналов розовым цветом. В архиве есть программа виртуального низкочастотного генератора fg_lite.exe. С помощью можно контролировать  реакцию выходных каналов на входящий звуковой сигнал. Итак, полдела мы сделали. Софт со стороны компьютера у нас уже работает! Следует отметить, что данное приложение будет перехватывать звук от любой программы, начиная  от аудио или видео плееров и заканчивая играми. Это вам не плагин Winamp!

По поводу того, как считать частоты.

Handle = BASS_RecordStart(22050, 1, 0, Nothing, 0), где – 22050(может быть 11025, 44100) это частота дискретизации сигнала, 1 (моно, 2 – для стерео, 4 – квадро) - число каналов.
BASS_ChannelGetData(Handle,@FFT(),#BASS_DATA_FFT4096) , где - BASS_DATA_FFT4096 (может быть от 256 до 8192) - это константа, которая задаёт 4096 выборок. Функция возвращает 2048 значений для моно сигнала (1 канал) в массив FFT. Вторая половина массива для моно - пустая!
Каждый период времени можно получать данные амплитуд на определенных частотах. 
FFT(f) - значении амплитуды на частоте (f). Т.е. для каждой частоты в массиве будет своя амплитуда. 
Чтобы получить суммарную амплитуду в определённом частотном диапазоне, нужно просто просуммировать все необходимые значения массива и усреднить результат. 
Шаг одной выборки при заданных значениях: 22050/2048 = 10,8 Гц
Делаем первых 300 выборок и усредняем.
for x= 1 to 300
freq=freq+(fft(x))
next
req=freq/300
Получили усреднённую частоту в диапазоне 0-3240 Гц (300*10,8Гц). Средняя частота – 1620 Гц. Частоты возрастают логарифмически, посмотрите хотя бы на эквалайзер, там сделано также.
 
Теперь нужно установить программу BASCOM-AVR. 

В принципе, можно было бы использовать для этих целей язык  С (библиотека V-USB), но я предпочёл Bascom,  как более простой. В можно не только писать софт для контроллера, но и сразу же прошивать этот контроллер! Cкачиваем Bascom-AVR, устанавливаем. USB драйвер (файл swusb.LBX ) нужно скопировать в папку LIB установленной программы BASCOM-AVR. Используйте компилятор BASCOM-AVR версий начиная с 1.11.9.3! Важно, чтобы он поддерживал длинные цепочки переименования и вычисления констант. Приём данных выполняются в главном цикле программы. Производится анализ полученных данных и после этого включаются или выключаются необходимые светодиоды. Код контроллера достаточно сложный, писал его вместе с библиотекой SWUSB заграничный парень мистер Оллопа, модифицировал нашенский Пётр,  за что им огромное спасибо. Я просто применил его для этого устройства, немного переработав и дополнив, исходя из требуемых условий.



Что можно изменить в исходнике контроллера?

Строка инициализации контроллера, можно использовать m48def.dat и m88def.dat :
$regfile = "m8def.dat"    
Уникальные идентификаторы устройства - Vendor ID and Product ID, задают в строках:
Const _usb_vid = &HAAAA
Const _usb_pid = &HEF22
Строковые дескрипторы – они отображаются на вкладке свойств HID – устройства и во время 
первого включения  во второй строке всплывающей подсказки «Найдено новое оборудование».

Так что смело можно менять на "VASYA  PUPKIN” или другой, но свой, родной, любимый.
Мой  Кот требовал написать «Мурзик Джян»!

'Manufacturer Descriptor (unicode)
_usb_mandescriptor:
Data 6 , 6 , _usb_desc_string
Data "K" , "O" , "T"

'Product Descriptor (unicode)
_usb_proddescriptor:
Data 20 , 20 , _usb_desc_string
Data "C" , "a" , "t" , , "s" , " " , "E" , "y" , "e" , " " 

Каждый символ занимает 2 байта, не забываем вместе со сменой дескрипторов корректировать их длину! 
Компилируем программу по нажатию на F7 (кнопочка в виде микросхемы), переходим в режим программирования по F4 (кнопочка – зелёная панелька с ручкой)
Впрочем, вышеописанное нужно читать тем, кто решил попробовать что-либо изменить или на основе этой конструкции создать свою. Например, управление бытовыми приборами, освещением через порт USB. Для тех, кто просто решил повторить, в приложении есть необходимое для изготовления медальона. Это исполняемый файл со стороны компьютера и скомпилированный файл прошивки для контроллера. И прошить вы сможете своим любимым программатором. А если решите это сделать в BASCOM-AVR, то он автоматом вам и фус-биты прошьёт. Вот эта строчка в исходном коде генерируется автоматом, после того как  первый раз вручную выставлены биты и нажата «Write PRG» на вкладке «Lock and Fuse Bits» программатора. 
$prog &HFF , &HFF , &HD9 , &HFF   'generated. Take care that the chip supports all fuse bytes.  
Это удобно для тиражирования устройств, не нужно каждый раз вручную фус-биты прошивать. По моему, такой же сервис есть и в «Понипроге».   Рядом с файлами *.bin и *.hex есть *.prg, вот в и находится информация о прошивке фус-битов.
Прошивки есть под 8, 48 и 88 Меги. В железе опробовано несколько экземпляров 8 и 48 в DIP и SMD корпусах, то есть то, что было под рукой.

Какой алгоритм цветомузыки?

Самый простой – выделение 18 частотных полос и срабатывание канала, если уровень превысил заданное значение. Все значения уровней подобраны экспериментально для лучшего визуального восприятия. Здесь не предусмотрено градаций яркости, но никто не мешает сделать это. Благо ресурсы контроллера позволяют. Тогда вместо 3 байт придётся передавать 18, со значениями яркости для каждого канала. В контроллере принятые значения нужно будет обработать в программном многоканальном ШИМе. Но и без градаций яркости медальон работает очень здорово, динамично. Каналов много, и поэтому есть чёткое разделение между музыкальными инструментами. В алгоритме заложено двойное логарифмирование сигнала – сначала общего уровня, затем каждой выделенной частоты. Это позволяет работать устройству в достаточно большом входном диапазоне звукового сигнала.
При желании можно переделать код под свои запросы. Например, изменить диапазон частот для каждого канала или поставить регуляторы уровня на каждый канал. Можно добавить бегущие огни в паузе. Можно вообще следить за спектром сигнала! Открывается большое творческое умопомрачение!!!

Как работает выходное оптическое устройство.

 Зачастую очень хорошее схемотехническое решение ЦМУ не может проявить себя в полной мере при плохом дизайне или неудачном выходном оптическом устройстве.  В тех конструкциях, что мне пришлось найти в журналах, книгах или интернете, очень мало внимания уделяется именно выходному оптическому устройству. А ведь это залог или успеха, или провала. Я видел хорошие схемы, но плохие экраны и наоборот, схемы посредственные, но интересные визуальные конструкции. Встречал и конструкции на небольшом количестве светодиодов, даже через USB! Но, ни в одной, ни слова об экране! Фишка медальона в том, что эта конструкция полностью законченная, с печатной платой и корпусом из подручных материалов.  Ставка сделана на сверх яркие светодиоды и круговую диаграмму световых лучей. Это позволило при малых габаритах устройства использовать любую ровную поверхность в качестве экрана (потолок, стена, пол) и получить очень яркий круг диаметром 1,5 метра и даже более! Неплохие возможности у «кошачьего глаза»! Светодиоды использованы узконаправленные (20-30 градусов), поэтому их лучи работают «в длину» и лишь немного перекрывают друг друга. Если использовать светодиоды на 60, а тем более 180 градусов, получим совершенно другой эффект – более яркое цветное пятно, но уже без такого большого общего диаметра. 
В принципе, нельзя сказать что это решение самое правильное. Можно экспериментировать, комбинируя светодиоды с разной световой характеристикой. Единственное условие – они должны быть только сверх яркие! Это устройство также может послужить неплохой основой для моддинга системного блока! И поверьте, смотрится очень даже здорово, несмотря на кажущуюся простоту. Тем более, конструкция транспортабельная, положил в карман и пошёл в гости! И ПО устанавливать не нужно, запустил с флешки, на которой несёшь и музыку тоже, и вот оно, счастье! Попробуйте, не пожалеете!
Несколько фотографий «Кошачьего глаза» в работе.












Возможный апгрейд девайса:

I – Программный.
Программируемые бегущие огни.
Индикатор уровня (стерео).
Фон – эффекты в паузе.
Некоторый код, относящийся к стерео спектроанализу и уровню сигнала, специально закомментирован. Это основа для последующих экспериментов.
II – Аппаратный.
Стерео – 2 модуля с разными VID/PID.
Полевые транзисторы и дополнительно +12 вольт от компьютерного БП для мощных светодиодных модулей.
Мощные силовые оптотриаки для управления нагрузкой 220 вольт.

Ещё одно интересное применение медальона – подключаем микрофон к ПК и пытаемся голосом зажечь определённый светодиод. Пока лучше всех получается у Кота, когда он что-то просит. Зажигаются сразу все!!!

SMD вариант.

Наконец-то руки дошли попробовать изготовление именно этой конструкций с применением SMD – элементов. Самое сложное, оказалось, настроить себя на новую технологию. В результате запаял обычным 25-ти ватным совковым паяльником! А габариты устройства значительно уменьшились – диаметр платы теперь 37 мм! В качестве корпуса можно использовать крышечки из-под сока – один вариант утилизации производства и сохранения окружающей среды.



Входная цепь немножко изменена, и нумерация выводов smd контроллера не совпадает  с dip. Поэтому пришлось нарисовать схему и для такого варианта. плате предусмотрена колодка для подключения программатора. Светодиоды запаяны несколько необычно, а именно: аноды к площадкам токоограничительных сопротивлений, катоды – к обратной стороне платы. это сделано для уменьшения габаритов устройства. Здесь диаметр платы взят из такого расчёта, чтобы по периметру вплотную друг к другу расположить 18 светодиодов. 
USB кабель, как и в первом варианте, дополнительно крепится к плате скобой из обрезанного вывода светодиода. Вначале запаиваем контроллер, кварц с обвязкой, блокировочные конденсаторы по питании. Прошиваем контроллер. Если контроллер удачно прошился, продолжаем монтаж – контур USB. Проверяем, чтобы компьютер нашёл новое устройство – Cat’s Eye. Последними запаиваем токоограничительные резисторы и светодиоды.







Как обычно, в спешке, перепутал местами 2 дорожки на плате, пришлось разрезать и поставить перемычки. Но в файле smd-платы эти ошибки уже устранены!







Полезные ссылки:

http://www.purebasic.com — сайт разработчика PURE BASIC.  
http://pure-basic.narod.ru  — русскоязычный сайт о PURE BASIC. 
http://www.mcselec.com/ — сайт разработчика BASCOM AVR.
http://bascomavr.3bb.ru/ — русскоязычный форум о BASCOM AVR. 
http://www.un4seen.com/  —  библиотека  для работы со звуком (bass.dll).
http://purebasic.info/phpBB2/viewtopic.php?t=947&highlight=bass
  —анализатор спектра (основа ЦМУ).
http://pure-basic.narod.ru/libs.html —  библиотека HID_Lib, предназначенная для работы с USB HID устройствами. 

Альтернативные USB конструкции:

http://laserium.narod.ru/usbsvet.html
http://electro.tora.ru/index2.html
http://www.kayf.ru/forum/index.php?showtopic=1068&st=0&
http://www.kayf.ru/avr/USB2PCAVR.gif
http://pavlinus.nm.ru/downloads/cmiplug.jpg
http://pavlinus.nm.ru/downloads/usbrs232.rar
http://pavlinus.nm.ru/downloads/cm.zip
http://www.aimp.ru/forum/index.php?topic=2054.105
http://www.aimp.ru/forum/index.php?action=dlattach;topic=2054.0;attach=9246
http://www.aimp.ru/forum/index.php?action=dlattach;topic=2054.0;attach=9255
http://www.mindrunway.ru/IgorPlHex7.html
http://www.mindrunway.ru/IgorPlug2/Cvet.zip
http://www.delta7.de/projekte.php#devis

К сожалению, качество видео подкачало… Снимал на мобильный телефон, он не успевает объективно среагировать на реакцию устройства. Наверно количество кадров маленькое. Да и звук плавает… в живую, поверьте на слово, смотрится гораздо интереснее. Хотел заказать на телестудии съёмку, но за их цену проще себе приз купить! Так что уж извините, чем богаты, тем и рады. 

В архиве есть несколько файлов проекта.
  • Files – файлы печатных плат (SLayout5.0) и схем (sPlan7.0).
  • Programm – исходные коды и готовый к употреблению софт (BASCOM_AVR, PUREBASIC).
  • Video – видеофрагмент работы медальона.
  • Doc – эта же статья в формате Word. 

Благодарности:
  • Господу – за то, что дал жизнь и нижеперечисленное.
  • Родителям – за то,  что родили и воспитали.
  • Жене и дочери – за то, что были моими вдохновителя и консультантами.
  • Администратору http://www.radiokot.ru  - за организацию конкурса и очень динамичный сайт.
  • Друзьям и коллегам за неподдельный интерес к моему увлечению.
  • Интернет ресурсам, которые использовал как информационный источник.
  • Моему Коту Мурзику, как же без него?


На фото Мурзик после очередной зимней смены греет свой рабочий инструмент и служит образцом для медальона. На первой картинке – логотипе кот черный, а мой рыжий с белым. Так вот, логотип ночью рисовал, а ночью все коты черные! Если вы уже встречали это фото в Нете, я его не сплагиатил, Мурзик действительно наш, на фото он в спальне дочери . Дочь его сфотографировала и где-то фотки уже выкладывала. Кого интересует авторство, приезжайте в гости, предъявлю как вещдок Мурзика и несколько готовых медальонов. Только без «Вискаса» Мурзик гостей не очень любит…

P.S. Автор, как и любой человек, может ошибаться. Если увидете ошибку, исправляйте. Если есть конструктивная критика, критикуйте. Если есть деловое предложение – предлагайте. Если что-то не вполне понятно – пишите, попробую разъяснить. остальное (деструктивное) мой Кот просто проигнорирует, а его хозяин – тем более! 

P.S. P.S.  Возможно, кто то скажет, что уже придумано до нас. Гениев мало, но зато они придумывают идеи, опережающие своё время. А простым смертным остаётся только находить эти идеи, собирать в единое целое и реализовывать свой творческий потенциал. Заявить о своих профессиональных способностях, по моему мнению, не менее важно, чем заполучить вожделенный приз в конкурсе. 

По просьбе выкладываю фус-биты для ATMEGA8 под CodeVisionAVR и PonyProg. 





Библиотека для работы с USB - HID_Lib_PB4.30--4.50.


Добавил новые прошивки с тестом - при включении питания проходит тройная вспышка светодиодов. Визуально убеждаемся, что контроллер стартовал. 

Новый вариант платы в SMD от Ant-RG и несколько фоток в его исполнении.





По просьбе Ant-RG собрал новую версию - v.1.1 - с настройками уровня срабатывания для каждого канала отдельно и сохранением настроек для следующего запуска.



Ещё один вариант печатной платы  в SMD от sabb для крышки 5-литровой бутыли. Плата разведена правильно - по аналогии с DIP, поэтому цвета с частотами в этом варианте совпадают. В предыдущих вариантах SMD, и в авторском тоже, цвета с частотами НЕ СОВПАДАЮТ! Этот глюк можно устранить корректировкой прошивки.


Давно хотел попробовать, как будет работать цветомузыка, сигнал которой анализируется 1 битом - музыка есть или музыки нет. А всё остальное делает программа (его величество RND) и мозг зрителя - v.1.5. Также поменял все надписи на английские.




      - Запоминает положение формы в предыдущем сеансе работы.
      - Запоминает состояние светодиодов клавиатуры до включения программы или активации данного режима и восстанавливает их состояние после выхода.
      - Каждый выход теперь можно подключить к своему фильтру, или вообще отключить! Отныне не важно, как вы разведёте плату! 
      - Кто не имеет возможности собрать устройство на микроконтроллере, может попробовать облегчённый вариант железа при наличии порта LPT. В таком варианте используется 12 каналов - первые 3 и последние 3 частотных фильтра при этом не задействованы. LPT порт предварительно должен быть переведен в режим EPP (в БИОСе). При первом запуске программа будет ругаться и сама закроется,но зато установит драйвер порта. Повторный запуск будет без проблем. 

        

Надеюсь, вы сможете подобрать в эту схему резисторы, чтобы ток не превышал 20 мА?
 
v.1.7 - Некоторые изменения в дизайне программы. Форма умеет разворачивается для отображения компонентов для выбора каналов.
Добавлена индикация включения светодиодов, изменён спектроанализатор.
 
         
  
v.1.8 - добавлены глобальные "горячие клавиши" для воможности управлять устройством с помощью пульта ДУ (Girder).
"ALT+SHIFT+F5" - Manual, "ALT+SHIFT+F6" - RND, "ALT+SHIFT+F7" - Auto, "ALT+SHIFT+F8" - смена эффектов по кругу.
 GML файл для Girdera (старий добрий 3.х) любезно предоставил Juris. Он/Офф, Разрешение/Запрет управления, Режимы, Цикл.




Категория: Мои статьи | Добавил: bascom (01.10.2010)
Просмотров: 59999
Всего комментариев: 1071 2 3 4 5 6 »
107 prapor75  
0
Спасибо bascom, я сам дома не нарадуюсь и уже друзьям не одну собрал дивайс!!! Если кому нужна помощь любая пишите не стесняйтесь помогу или вышлю, gorbyd@yandex.ru. smile

105 Ukitake  
0
То, что касперский находит вирус в программе (например v.1.8), это нормально?

106 bascom  
0
Каспер и сам на себя ругается. Так он определяет библиотеку для работы с ЛПТ. Не мою, кстати. И вируса в ней нет. В Кошечкином глазе последних версий использовал другую библиотеку, и Каспер замолчал...

101 doping-x  
0
можете пожалуйста точную ссыль на прошивку атмеги8 для первой сборки дать, ибо я уже запутался, да и PonyProgОМ прошить можно?

102 bascom  
0
Поником прошить можно. Ну а прошивку лучше брать с Кошечкиного глаза, там реализованы градации яркости. В первом варианте этого нет. Читайте внимательно первую и вторую статью.

103 doping-x  
0
http://bascom.at.ua/2010/Pussycat/Cats_Eye_gcc_new.zip
оно? мне как то не очень понятно там намного больше файлов чем в первых прошивках мне под атмегу8 нужно щас еду на базар скупится, можете если не то то привильныю ссылку дать?

104 bascom  
0
В этом архиве, в папке default - кексы для всех атмег.

98 vanek  
0
помогите купил новую мать нет ltp порта чё делать?

100 bascom  
0
Купить контроллер и сделать на ЮСБ. Или заказать готовый у того, кто может сделать. По Украине могу я прислать.

96 prostyk_ja  
0
народ а у меня внешний LTP который работает через USB я делаю всё а лампочка не мигает а просто горит!!помогите как в этом мне разобраться чтобы моргало....

97 bascom  
0
99% что не заработает... Обычно такие устройства служат драйверами для принтера, но не позволяют напрямую дёргать ножками. Посмотрите в устройствах, как этот внешний ЛТП biggrin называется.

99 bascom  
0
Купить контроллер и сделать на USB. Возможностей там намного больше. Или заказать у того, кто может сделать. По Украине могу выслать.

94 Rom@n  
0
а нет ли возможности управлять этой микросхемой программой WndLpt? Программка мне очень нравится,потому что очень хорошо написан движок и есть опции нескольких спектров,наборы всяких эффектов,бегающих и мигающих. К сожалению программка только для LPT-порта,а от 12ти проводов хотелось бы избавиться и подключить все через USB. Может есть уже такая,только для USB?

Еще есть у меня 50 4х пиновых диодов RGB, хотел бы сделать цветомузыку именно на них,чтобы менялись и мешались цвета. Примерно в голове прикинул как это будет выглядеть, но вот 12 проводов от компа неохота снова вести,к тому же,хочу чтобы сборка была транспортабельной, т.е. USB smile спасибо!

И еще вопросик,если я поленюсь и присобачу уже готовую схему с той самой ATMEGA8,к примеру эту :http://www.ebay.de/itm/MEGA-2560-ATMEGA2560-ATMEGA8U2-for-Robot-Arduino-/260836889242?pt=LH_DefaultDomain_77&hash=item3cbb17129a#ht_1676wt_1163
или эту :http://www.ebay.de/itm/Neu-UNO-ATMEGA328P-ATMEGA8U2-Microcontroller-Board-Free-USB-Cable-For-Arduino-/260885913184?pt=LH_DefaultDomain_77&hash=item3cbe031e60#ht_7424wt_1163 ,смогу ли добиться желаемого результата?

95 bascom  
0
WndLpt - такой возможности нет и не будет. Обращайтесь к автору WndLpt, может быть он поможет. RGB устройство возможно появиться, но не ранее чем через пол года, а то и год.
По поводу сторонних плат я консультации не даю, т.к. у меня нет возможности разбираться, что там к чему.

92 андрей  
0
подскажите пожалуиста, а конденсатор С3 какой? а то мне продали электролитический

93 bascom  
0
Керамический нужен.

89 дмиТрий  
0
а вы не подскажите, есть ли какой ещё програматор простенький

90 bascom  
0
5 проводков. Тоже на LPT. Или есть не намного сложнее для СОМ-порта. В интернете схем навалом.

91 trtrtfgdgd  
0
могу посоветовать этот
http://www.getchip.net/posts/delaem-lpt-programmator-dlya-avr-mikrokontrollerov/
он идет по более упрощенной версии, но катируется как STK200/300, который очень прост в исполнении и который по идее читается в bascom-avr, но у меня чего то он не хочет нормально работать ни с какими программаторами
однако запустил в проге, которая описана внизу статьи
http://www.qrz.ru/schemes/contribute/constr/extra-pic/
еще одно, что не хватает в статье программатора - это надо на канал VCC кинуть 5 v. я его кинул со штекера сидюка (с красного провода в нем) вывод тока идет в землю на Lpt, так что вот такие пироги)

86 дмиТрий  
0
http://easyelectronics.ru/programmator-stk200300-dlya-mikrokontrollerov-avr.html
пойдет такой програматор???

87 bascom  
0
Пойдёт, если у вас есть порт LPT.

85 дмиТрий  
0
а больше ни как? вроде бы писалось что он сам прошивается

88 bascom  
0
Покажите, где писалось. "Вроде" - в программировании термин не применимый. wacko

1-10 11-20 21-30 31-40 41-50 51-56
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
Друзья сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Copyright Radan Studio © 2024