Проект Eldigi.ru пережил своё новое становление. В связи с этим на сайте могут быть ошибки. Нашли ошибку? Помогите проекту, выделите её и нажмите Ctrl+Enter. Подробнее...

Простой WAV плеер на AVR микроконтроллере (ATtiny25/45/85, C)

Это простой SD аудио плеер на одном микроконтроллере ATtiny25/45/85. У этих микроконтроллеров есть два быстрых ШИМ (fast PWM) выхода с несущей 250кГц. Источником аудио для этого плеера является SD карта памяти. SD карта памяти имеет шесть выводов. Два для питания и четыре интерфейсных. Восьми выводов микроконтроллера достаточно для подключения SD карты, динамиков и кнопки управления.

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

Железо.
На фотографии показан самый маленький аудио плеер в мире (воспроизводит с MicroSD карты). Есть три схемы плеера с различными конфигурациями. Носителем записей, которые будут воспроизводиться, является MicroSD. Конечно можно использовать стандартную SD или MiniSD карту, если подключить их соблюдая распиновку. 
Динамики подключаются непосредственно к выводам ШИМ микроконтроллера. Не смотря на это выходной ток никогда не превысит максимально допустимые значения, при напряжении питания 3В. Плеер даёт звук достаточный для прослушивания музыки дома, в тихой обстановке. Если требуется подключить плеер к усилителю то необходимо предварительно отфильтровать высокочастотную составляющую с помощью фильтра НЧ. Непосредственное подключение выхода ШИМ на вход усилителя может повредить усилитель и динамики!

Аудиоплеер разработан в трёх версиях, моно, стерео и высококачественный моно:

Схема моно WAV плеера на микроконтроллере  Схема стерео WAV плеера на микроконтроллере  Схема высококачественного моно WAV плеера на микроконтроллере

Софт.
Карта памяти отформатирована под файловую систему FAT. В микроконтроллере заложена программа для работы с этой файловой системой. В качестве основы была использована библиотека Petit-FatFs которая является урезанной версией FatFs. Этот модуль был специально разработан для систем с малым количеством доступной RAM памяти. Это является очень важным параметром при использовании таких крошечных МК как ATtiny25/45/85.

В архиве есть прошивки для различных версий схем. Исходный код написан на языке Си и достаточно прокомментирован. Значения FUSE битов определены в шестнадцатиричных файлах (*.hex). Некоторые программаторы не поддерживают такой формат *.hex, если это имеет место то можно взять значения FUSE битов из файла main.c.
В схеме со стерео выходом используются все выводы МК включая вывод RESET. Для возможности использовать этот вывод МК необходимо запрограммировать FUSE бит RSTDISBL. Это можно сделать с помощью обычного ISP программатора, но только один раз. После установки этого бита ISP программатор больше не сможет прошить МК. Для последующей перепрошивки МК будет необходим программатор с возможностью прошивки в режиме HVSP (High Voltage Serial Programming).
В схеме с моно выходом вывод RESET не используется, по этому МК может быть прошит ISP программатором.

Аудиоплеер поддерживает только WAV файлы формата PCM 8/16 бит, стерео/моно с частотой дискретизации до 48kHz. Файлы MP3 должны быть преобразованы в файл WAV. Воспроизведение начинается при подаче питания или при подключении карты памяти. Для воспроизведения следующего файла нужно нажать кнопку Next.
Если директория "wav" находится в корневом каталоге, то аудио файлы будут воспроизводиться из этой директории. Если папки "wav" не существеут, то файлы для воспроизведения будут браться из корневого каталога карты памяти.

Скачать исходный код на С и прошивки (62 Кб). Загрузок: 775

Автор статьи: ChaN
Первоисточник (на английском). Перевод по заказу сайта eldigi.ru
Просмотров: 6537

Splan 7.0.0.9 Rus + Portable + Viewer Fiinal
26.04.2014
sPlan – удобный инструмент для черчения электронных схем. Имеет простой и интуитивно понятный интерфейс. В программе заложены... подробнее...

Очень удобная программа для чтения pdf Foxit Reader
26.04.2014
Foxit Reader - Компактная и шустрая программа для чтения PDF файлов. Может служить альтернативой для популярного просмотрщика PDF - Adobe Reader.... подробнее...

Proteus 7.7 SP2 + Crack v1.0.2 + RUS
22.04.2014
Proteus VSM - программа-симулятор микроконтроллерных устройств. Поддерживает МК: PIC, 8051, AVR, HC11, ARM7/LPC2000 и другие распространенные процессоры.... подробнее...

Новое становление сайта Eldigi.ru
01.04.2014
Проект Eldigi.ru который долгое время находился в застывшем состоянии снова принимается за работу с новымы силами, с новыми статьями и с... подробнее...

Proteus 7.7 SP2 + Crack v1.0.2 + RUS
22.04.2014
Proteus VSM - программа-симулятор микроконтроллерных устройств. Поддерживает МК: PIC, 8051, AVR, HC11, ARM7/LPC2000 и другие распространенные процессоры.... подробнее...

Splan 7.0.0.9 Rus + Portable + Viewer Fiinal
26.04.2014
sPlan – удобный инструмент для черчения электронных схем. Имеет простой и интуитивно понятный интерфейс. В программе заложены... подробнее...

Цифровая паяльная станция своими руками (ATmega8, C)
27.05.2012
Состав: ATmega8, LM358, IRFZ44, 7805, мост, 13 резисторов, один потенциометр, 2 электролита, 4 конденсатора, трехразрядный светодиодный семисегментный... подробнее...

Тахометр на AVR микроконтроллере (ATtiny2313, C)
13.01.2010
Данное устройство представляет собой неплохой тахометр, предел его измерений составляет 100 - 9990 об/мин. Точность измерения - ± 3 об/мин.... подробнее...

Блок питания 3-20В, 0.1-10А (ATmega8, C)
12.01.2010
Без чего не может обойтись не один радиолюбитель? Правильно - без ХОРОШЕГО блока питания, а ещё лучше ХОРОШЕГО ДВУХКАНАЛЬНОГО блока... подробнее...

Устройство ввода вывода (PIC16F628A)
02.12.2010
Это устройство ввода вывода, применять можно в любых целях, где нужны кнопки и индикация. Устройство позволяет выводить на индикаторы... подробнее...

Простой термометр на DS18B20 (ATtiny2313, C)
26.01.2008
Это простой термометр на основе термо датчика DS18B20 и мк ATtiny2313 (или AT90S2313) выводящий информацию на 7-сегментный ЖКИ – модуль на основе... подробнее...

15-ти канальный управляемый диммер (ATmega8)
20.05.2011
В наш повседневный быт всё чаще входят различные интеллектуальные системы управления. Стиральные машинки давно сами стирают и сушат,... подробнее...