Выложил проектные файлы Eagle для SD WAV плеера и NGW100 VGA преобразователя. В архивах схемы, печатные платы и Gerber файлы, по которым я изготавливал платы. Вдруг кому пригодится.
Записи с меткой «sd-wav»
Радио/ Музыкальная открытка своими руками
07.09.2010Эпопея с SD WAV плеером наконец подошла к концу. В итоге получилась музыкальная открытка:
Как видно, проблему с питанием частично удалось решить установкой батарейки типа CR2. Она конечно все равно здоровая, но хотя бы полностью поместилась на плате.
Вот как оно работает.
К сожалению идея с маленькой дисковой батарейкой с треском провалилась: microSD жрет слишком большой ток. Так что в нагрузку к моему маленькому плееру требуется здоровый блок из двух батарей AA.
Вот что получилось.
Самое сложное было припаять разъем для microSD.
Как видно, контакты у него внутри. Сначала пробовал припаять их горячим воздухом и все боялся поплавить пластмассовые части. Но пластмасса к счастью оказалось вполне жаростойкой, хотя это и не помогло, добиться хорошего растекания припоя я не смог, даже не знаю почему. Поэтому взял паяльник с острым жалом и аккуратно через отверстия в кожухе пропаял каждый контакт.
Еще одна интересная деталь — разъем слева. Он предназначен для программирования микроконтроллера. В законченном изделии его необходимо будет удалить. Для этого я сниму пластмассу и отпаяю контакты по одному. А торцевым я его сделал на тот случай, если придется его повторно припаивать, так как при обычном монтаже «в дырки» для повторной пайки нужно было бы отчищать отверстия от старого припоя, что муторно.
Мир не без добрых людей. Добрые люди помогли изготовить печатные платы для моих поделок, за что им большое спасибо.
Можно приступать к монтажу.
Радио/ PCB для LCD-VGA преобразователя и SD WAV плеера
16.07.2010За последние две недели неплохо продвинулся в изучении Eagle вообще и искусства разводки печатных плат в частности. В результате нарисовал плату для LCD-VGA преобразователя и заодно переделал плату для SD WAV плеера. Вот что получилось в итоге.
Оба дизайна экспортированы в Gerber, проверены на корректность на сайте BatchPCB и полностью готовы к производству. Осталось решить, где и как их изготовить.
Расскажу, какой софт я выбрал для рисования схем и, самое главное, печатных плат. Для затравки вот мой первый опыт — схема и плата SD WAV плеера. Схема, повторюсь, не моя, от оригинала отличается только наличием разъема для программатора. Плату сделал сам с помощью авторазводчика.
В силу того, что я в электронике новичок, каких-либо пристрастий к софту для проектирования у меня не было, поэтому было абсолютно все равно, что начать изучать. Сначала я схватил то, что у всех на слуху — P-CAD. Учитывая, что в России нет ни юридических, ни моральных проблем с использованием нелегальных копий ПО, сделать это было легко. Однако P-CAD оказался гигантским монстром, плохо подходящим для разработки любительских схем. В общем-то, это было сразу ясно из его цены, и если бы не торрент-трекеры, я бы даже не посмотрел на него. Кстати, самого P-CAD уже не существует, вместо него предлагается Altium Designer, который еще дороже и еще монстроидальнее.
Слышал, что многие любители пользуются Sprint-Layout, не знаю, правда, насколько легально. Но про эту программу я узнал поздно, поэтому прошел мимо. А выбрал я по совету коллеги Eagle от CadSoft.
Eagle оказался очень приятным, простым в обращении, без миллиона лишних функций, но тем не менее весьма мощным инструментом. Он позволяет рисовать схемы, создавать собственные библиотеки компонентов, разводить печатные платы (как в ручном режиме, так и в автоматическом) и подготавливать их к производству. Есть версия для Windows, Linux и Mac. Не смотря на свою простоту, в нем можно разрабатывать довольно сложные многослойные платы, и многие фирмы за рубежом его активно используют. В том числе и мои любимые SparkFun.
Самая простая версия Light стоит $49. Она позволяет создавать только один лист со схемой, печатную плату не более двух слоев и размером до 100×80 мм. Однако если программа используется в любительских целях, платить ничего не нужно! Меня ограничения версии Light вполне устраивают, поэтому я не стал качать никакие кряки.
Встроенная библиотека компонентов довольно обширна, но конечно многое придется рисовать самому. В Интернете выложено много сторонних компонентов разного качества. Часть можно скачать непосредственно с сайта CadSoft.
В принципе изучать Eagle можно самостоятельно методом научного тыка и интуиции, но лучше все же почитать какое-нибудь руководство. Отличный набор статей есть на сайте SparkFun, правда на английском: как сделать схему, печатную плату и собственный компонент. Я учился именно по ним.
Пришла долгожданная посылка из Австралии с USB программатором контроллеров AVR.
Пришла очень вовремя, так как я наконец собрал все необходимые комплектующие для SD WAV плеера.
Осталось изготовить печатную плату, все припаять и запрограммировать.
Итак, новый проект, о котором я упоминал ранее — штуковина, умеющая проигрывать WAV-файлы с SD (или microSD) карточки. Такую штуку, если сделать ее достаточно миниатюрной, можно встроить, например, в детскую игрушку или книгу.
Вообще, я не сразу пришел к этой идее. Изначально я хотел сделать «говорящую» игрушку следующим образом: взять простой 8-битный микроконтроллер и в его внутреннюю FLASH-память записать звуковой фрагмент. Но внутренняя память крайне мала по объему (менее 16 Кб), поэтому пришлось бы использовать самое низкое качество записи и довольствоваться несколькими секундами звучания.
Затем коллега на работе показал очень интересную микросхему: аппаратный декодер MP3 со встроенным ЦАП. Использование сжатого формата MP3 позволило бы сильно увеличить время записи. Начав искать примеры схем с использованием этого чипа я обнаружил, что в качестве хранилища данных предлагается использовать microSD карточку. При этом SD карты поддерживают протокол SPI, что позволяет легко работать с ней даже простому микроконтроллеру.
Объем современной, даже самой дешевой, SD карты превышает 1 Гб, что эквивалентно трем часам непрерывного звучания несжатого звукового потока в CD качестве (16 бит, 44100 Гц). Поэтому необходимость использования MP3 отпадает сама собой, батарейка устройства (если делать его достаточно миниатюрным) закончится раньше, чем запись. Таким образом получается следующая схема: SD карта, 8-битный микроконтроллер, ЦАП, миниатюрный динамик и дисковая батарейка (как на материнских платах). К сожалению, большинство 8-битных микроконтроллеров не обладают встроенным ЦАП, поэтому необходим внешний.
Я уже начал было подбирать компоненты, когда наткнулся в Интернете на еще более элегантное решение: использовать вместо ЦАП ШИМ. ШИМ — это когда выдается прямоугольный сигнал, у которого меняется отношение периода следования импульсов к их длительности (скважность). Тогда, если посчитать среднее напряжение на выходе, оно будет меняться соответственно скважности. Таким образом получается аналог ЦАП. При этом, если подать ШИМ сигнал непосредственно на динамик, высокочастотная несущая будет отфильтрована в силу того, что динамик просто не в состоянии воспроизвести такие высокие частоты. Прелесть этого метода в том, что даже в простейших микроконтроллерах есть аппаратный выход ШИМ, что позволяет не тратить процессорное время на обработку сигнала.
Так что я решил, не мудрствуя лукаво, повторить уже готовую схему. Для экспериментов собрал схему на макетке, динамик взял от старой китайской детской игрушки, разъем для SD карточки от ридера.
В оригинальной схеме использовался микроконтроллер ATtiny85. В магазине такого не было, и я взял ATtiny45, посчитав, что такая замена возможна, однако промахнулся. В моем контроллере оказалось в 2 раза меньше памяти, и прошивка просто не поместилась в него. Попытки залезть в код с целью уменьшить его не привели к работе устройства. Какой-то звук из динамика издается, но он совсем не похож на записанный файл. Так что пока эксперименты продолжаются.