Це простий SD аудіо плеєр на одному мікроконтролері ATtiny25/45/85. У цих мікроконтролерів є два швидких ШІМ (fast PWM) виходу з несучою 250кГц. Джерелом аудіо для цього плеєра є SD карта пам’яті. SD карта пам’яті має шість висновків. Два для живлення і чотири інтерфейсних. Восьми висновків мікроконтролера достатньо для підключення SD карти, динаміків і кнопки управління.

Залізо.
На фотографії зображений найменший аудіо плеєр у світі (відтворює з MicroSD карти). Є три схеми плеєра з різними конфігураціями. Носієм записів, які будуть відтворюватися, є MicroSD. Звичайно можна використовувати стандартну SD або MiniSD карту, якщо підключити їх дотримуючись терморегулятори.
Динаміки підключаються безпосередньо до висновків ШІМ мікроконтролера. Не дивлячись на це вихідний струм ніколи не перевищить максимально допустимі значення, при напрузі живлення 3В. Плеєр дає звук достатній для прослуховування музики будинку, в тихій обстановці. Якщо потрібно підключити плеєр до підсилювача то необхідно попередньо відфільтрувати високочастотну складову за допомогою фільтра НЧ. Безпосереднє підключення виходу ШІМ на вхід підсилювача може пошкодити підсилювач і динаміки!

Схеми: Mono | Stereo | Mono(Hi-Res)

Софт.
Карта пам’яті відформатована під файлову систему 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” не Существеут, то файли для відтворення будуть братися з кореневого каталогу карти пам’яті.

Завантажити вихідний код на С і прошивки

Першоджерело (Англійською). Переклад здійснено адміністрацією сайту eldigi.ru