Skip to content
This repository was archived by the owner on Jan 6, 2025. It is now read-only.
/ da50x Public archive

Акустическая система с открытым исходным кодом

License

Notifications You must be signed in to change notification settings

lethanner/da50x

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Аудиоусилитель DA50X

a.k.a. "Цифровая акустическая система с открытым исходным кодом" Click here to see English version

Warning

Проект больше не поддерживается. Обратите внимание на LTDA Prime

Внешний вид DA50X

Проект основан на моих детских фантазиях из 2017 года и собран макетом. Не следует воспринимать всё всерьёз. При желании вы можете собрать его по приложенной схеме, собрать исходный код и загрузить его в Arduino, либо использовать часть исходного кода в своих проектах (например, реализацию вывода многостраничного меню на OLED-дисплей).

Сторонние библиотеки by AlexGyver

Характеристики

  • Выходная мощность: 2x15 Вт на нагрузку 8Ω
  • Выход на сабвуфер (не готов)
  • Подключение звука через USB и Bluetooth
  • Удалённое управление через приложение (в т.ч. через Bluetooth SPP)

Дополнительные особенности

  • Оптимизация прошивки (минимум сторонних библиотек и оригинальных Arduino-функций, работа с регистрами и прерываниями PCINT)
  • Интерфейс с OLED-дисплем и единственным энкодером управления
  • Русский и английский языки интерфейса
  • Контроль температуры радиатора усилителя
  • Возможность питания только от USB-разъема ("DAC-only mode" для использования устройства в качестве звуковой карты)
  • ну и просто осуществление детской мечты Дисплей DA50X

Чек-листы

Стадии реализации

  • Поддержка USB-аудио
  • Поддержка Bluetooth-аудио
  • (Optional) Поддержка FM-радио
  • (Optional) Поддержка USB-накопителей и карт памяти
  • Вход AUX
  • Вход для микрофона
  • Индикаторы уровня
  • Поддержка удалённого управления (Bluetooth SPP + USB UART)
  • ПО удалённого управления
  • Выход на сабвуфер

Исправления ошибок

  • Фоновый шум Bluetooth
  • Фоновый шум USB1
  • Отсутствие буферного ОУ на линейном выходе2
  • Побочное свечение первых светодиодов индикаторов

Конфигурация

См. файл src/config.h.

#define RUSSIAN                             // компилировать прошивку с русским языком интерфейса
#define CTRL_HOLD_TIMEOUT_MS 500            // время удержания кнопки энкодера перед срабатыванием триггера удержания
#define ACT_AUTOCLOSE_TIMEOUT_MS 1500       // таймаут возврата с экрана действия на главный экран (например, после изменения громкости)
#define BT_AUTOCONNECT_TIMEOUT_MS 11500     // таймаут ожидания автоматического подключения спаренного с DA50X устройства Bluetooth
#define DISP_AUTO_DIMM_TIMEOUT_MS 15000     // таймаут автоматического снижения яркости дисплея
#define TEMP_REFRESH_INTERVAL_MS 2000       // интервал обновления данных с датчика температуры
#define QUICK_VOLUME_ACTIVATE_MS 40         // интервал между тактами энкодера, при котором сработает "быстрая регулировка громкости"
#define UNDERVOLT_CHECK_MS 500              // интервал обновления информации о наличии проблем с питанием
#define TEMP_MAX_WARNING 69                 // максимальная температура перед предупреждением о перегреве
#define INIT_VOLUME 25                      // начальное значение громкости при запуске

Footnotes

  1. решается правильной разводкой цепей GND - наличием дополнительного проводника между землёй USB-порта и землёй разъема питания

  2. приводит к появлению помех, просадке низких частот и общей громкости при подключении чего-либо к линейному выходу

About

Акустическая система с открытым исходным кодом

Resources

License

Stars

Watchers

Forks