Представляю новую железку) (точнее пока прототип - тестовые платки еще идут)
Основной идеей была задумка о легкой повторяемости поэтому "мозгом" была выбрана Ардуино нано.
Из возможностей:
1. Поддержка трех форматов: psg, rsf, yrg
2. Воспроизведение в трех режимах: Все по кругу, случайный трек, повторять 1
2. Поддержка проигрывания через Serial порт, например с помощью плеера от avray.ru
3. I2C OLED экран 128х64 точки для отображения инфы
4. Встроенный усилочек для наушников с управлением по I2C (нет в прототипе(в видео), ибо нет переходника чтоб его запаять)
Демо работы:
Скрытый текст
[свернуть]
UPD (22.11.2022): Все материалы (схема, прошивка(platformio), герберы, корпус под печать) доступны на GITHUB
Собрано 2 экземпляра (один на ARDUINO NANO, другой на его китайском клоне - LGT8F328p NANO Style) - оба работают отлично!)
R4 и R5 - можно не запаивать (подтяжка шины I2C, она есть в экране) - остальное по схеме.
Подойдет AY/YM как DIP-40 так и DIP-28 (AY-3-8912)
Рекомендую собирать сначала усилитель, PCF8574, преобразователь уровней для SD, всю рассыпуху, кнопки, а уже в конце AY, NANO, модуль зарядки и экран.
Если Arduino Nano - сразу выпаять SPI гребёночку (2x3 PIN), для клона просто запаиваем в плату.
Где купить детальки (не реклама):
Усилитель TPA6130A2 BSG QFN20
PCF8574 SO-16 - если Китаец пришлет в корпусе SSOP-16 (он шире) вместо SO-16 как было у меня - не беда, подгибаем ноги "под себя" и паяем феном.
Модуль зарядки и DC-DC TP5100
Преобразователь уровней для SD карты 74LVC125
Экран OLED SSD1306 128x64
Слот для SD карты TFP09212B
Micro USB разъем HRS_ZX62D-B-5P8
Ползунковый переключатель 12F14 или EG1213
Остальное думаю найти не проблема)
Управление:
UP: громкость +
DOWN: громкость -
OK: короткое нажатие - play/pause; длинное нажатие - режимы проигрывания ALL/RND/ONE
LEFT: короткое нажатие - предыдущий трек, длинное нажатие - переключение на режим игры через COM port (AVR-AY Player от avray.ru) и обратно на SD
RIGHT: короткое нажатие - следующий трек, длинное нажатие - перемотка вперед.
(удерживать OK) + UP - увеличить контрастность экрана
(удерживать OK) + DOWN - уменьшить контрастность экрана
Настройки громкости и контраста хранятся в EEPROM.
Немного рендеров:
Скрытый текст
[свернуть]