Управление adau с помощью arduino

alex-frolov/dsp-adau1452

Use Git or checkout with SVN using the web URL.

Work fast with our official CLI. Learn more.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

It uses adau1452 as DSP. Examples of working projects.

Примеры проектов на adau1452.

Использовались:

Всё по цене дешевле чем у китайцев брать что-то похожее и без гаранции, что заработает.

0. В начале проверяем работоспособность платы.

1. Версия без микроконтроллера с переменными резисторами. Лежит в папке first.

Входы: USB через SUPER PRIME, китайский bluetooth 5.0 модуль подключенный через PCM1808 к ADAU1452, возможно использовать оставшиеся два входа и SPDIF. Селектор на пять каналов это подразумевает. Выходы: один PCM5102A серео. Задействовано 5 переменных резисторов подключенных на AUXDAC0-4:

  • селектор 5 входов, 5ый вход тестовый, генерит шум и синусоиду;
  • Регулятор громкости;
  • регулятор баланса;
  • фильтр низких частот (до 100Гц);
  • фильтр высоких частот (от 5кГц).

У первого входа стоят фильтры от постоянки на входе и фильтры высоких частот от 20Гц, чтобы обрезать всё что ниже. Никакой особой обработки звука, кроссоверов, параметрических эквалезеров и пр.

Были проблемы с землёй и питанием, у ЦАПа и АЦП не подключал 3.3в ножку, питание через +5в. USBi так же убрал +3.3в подключение к adau. Питание от SUPER PRIME, подключил +5в туда внешние. От компа через SUPER PRIME так же ок. Так же при подключении в параллель USBi и SUPER PRIME — земляная петля часто — треск и помехи.

С SUPER PRIME — были танцы с бубном, прошил с v1.4 до v1.5.1 — заработало всё что с 48кГц и ниже. Что бы запустить на 32 бита и 96кГц надо в проекте во вкладке CLOCK CONTROL опцию «PLL input clock divider» установить в «Вумшву ин 8».

На слух какая-то особенность с регулировкой баланса, не совсем разобрался.

Макетная плата

Основная схема

Табица сравнения селектора входов

Настройка ФНЧ

Настройка ФВЧ

Вкладка настройки CLOCK CONTROL

Вкладка настройки CORE CONTROL

Вкладка настройки SERIAL PORT

2. Версия без микроконтроллера с переменными резисторами. Перебор каналов — кнопкой. Лежит в папке button_source_selection.

Проект трансформирован из первого, убраны регуляторы ФНЧ/ФВЧ и селектор каналов, добавлена кнопка для перебора каналов. Входы: USB через SUPER PRIME, китайский bluetooth 5.0 модуль подключенный через PCM1808 к ADAU1452, возможно использовать оставшиеся ОДИН вход и SPDIF. Селектор на пять каналов. Два последних канала — тестовых. Один вход занят кнопкой в режиме GPIO. Контакт LRCLK_IN3 / MP13. Выходы: один PCM5102A серео. Задействовано 2 переменных резистора подключенных на AUXDAC0-4:

  • Регулятор громкости;
  • регулятор баланса;

Кнопку подключаем — один вывод к pin MP13, другой контакт к +3.3В.

Макетная плата

Основная схема

Вкладка настройки MULTIPURPOSE / AUXADC

3. Версия с микроконтроллером Arduino. Демонстация отправки команды mute в DPS ADAU1452 при помощи Arduino

Дополнительно использовались:

Проект SigmaDSP такй де как N2 Входы: USB через SUPER PRIME, китайский bluetooth 5.0 модуль подключенный через PCM1808 к ADAU1452, возможно использовать оставшиеся ОДИН вход и SPDIF. Селектор на пять каналов. Два последних канала — тестовых. Один вход занят кнопкой в режиме GPIO. Контакт LRCLK_IN3 / MP13. Выходы: один PCM5102A серео.

Схема: DSP подключен по I2C к Arduino к SDA (A4) и SLC (A5) по адресу 0x38, подключение через двунаправленный перобразователь уровня для 5в — 3.3в К D2 подключена кнопка, которая включает/отключает Mute К Arduino так же по I2C подключен двухстрочный дисплей по адресу 0x270x27

Команду для вкл/выкл mute — забираем из SigmaStudio в логах.

arduino проект

4. Версия с микроконтроллером Arduino.

Использовались:

Входы: USB через SUPER PRIME, китайский bluetooth 5.0 модуль подключенный через I2S к ADAU1452, линейный вход, подключенный через PCM1808 к ADAU1452, SPDIF оптика через RX147, FM в проекте. Выходы: один PCM5102A серео, два PCM5102A для XLR стерео выхода, дополнительно к каждому PCM5102A в месте подключения +5в и GND подключены конденсаторы 100мкФ и 0.1мкФ, иначе слышимые помехи, при включении лишь одного DAC ничего не нужно.

У входа стоят фильтры от постоянки на входе и фильтры высоких частот от 20Гц, чтобы обрезать всё что ниже. Управления: 1 кнопка выклю/выкл — система засыпает 2 кнопка выбора каналов: последовательно BT -> USB -> LineIn -> FM -> SPDIF 3 Энкодер: клик — выбор параметра для регулировки, вращение — смена регулировки. Параметры:

  • громкость
  • баланс
  • включение супер басс
  • включение динамический басс
  • включение расширения стереобазы После простоя работы с меню — преключение на громкость.

Основная схема

Подключение блоков

Настройка DSP EEPROM

Вкладка настройки CLOCK CONTROL

Вкладка настройки asrc0

Вкладка настройки asrc1

Вкладка настройки SERIAL PORT

Вкладка настройки для настройка портов

Источник

Analog Devices Wiki

Table of Contents

Interfacing SigmaDSP Processors with a Microcontroller

Overview

This guide describes how to integrate a SigmaDSP processor into microcontroller-based systems.

Microcontrollers are available in a wide variety of architectures and capabilities, so rather than creating a fully-featured SigmaDSP library for every processor, we focus here on the principles behind successful SigmaDSP integration so that users can complete designs quickly and efficiently.

Arduino-compatible example code, attached below includes a simple program to boot ADAU1701, ADAU1761, or ADAU1467 processors without any modification. It is written for the Teensy 4.0, so pin assignments should be adjusted for use on other platforms. Teensy 4.0 was chosen because it is easy to use and has enough memory to store even the largest SigmaDSP program. Version 1.1.0 of the code is also tested and working on ESP8266 (with minor changes described below).

This guide takes advantage of C++ header files generated by SigmaStudio which reduce complexity in users’ code.

Notes about Example Code Version 1.1.0

Communications- I2C and SPI

Hardware Connections

USBi Connector

All SigmaDSP evaluation boards are outfitted with a 10-pin connector for programming. The connector mates with a USBi programmer (included with all evaluation boards) using the pinout shown here. The USBi connector is also the best way to connect a microcontroller to your evaluation board.

Please reference the schematics for your evaluation board’s User Guide, which can be found on its product webpage, to determine which interfaces are exposed on connectors. Also note whether your evaluation board includes pull-up resistors on the SCL, SDA, and /SS pins; if they are not present, you must add them.

ADAU1701

The evaluation board uses 3.3V logic levels. Level shifters are recommended for interfacing with 1.8V or 5V microcontrollers.

The 5V power pin (Pin 4) can be connected to your microcontroller’s VUSB pin if sufficient current is available. Be careful not to exceed 500mA total current draw from a USB port.

ADAU1761

EVAL-ADAU1761Z also allows Pin 4 of the USBi connector to power the DSP . Again, ensure that your system consumes port.

ADAU145x/ADAU146x

Note that Pin 4 of the USBi connector illuminates an LED but does not supply power to the entire board. ADAU145x and ADAU146x processors should be powered through the barrel jack.

Example Schematic

The following schematic based on the Teensy 4.0 microcontroller allows programming of SigmaDSP processors through the USBi programming header and was used for development of the example code. Please click the image to see a full-resolution version.

Notice that the SCL and SDA connections are duplicated on the header:

The same is true for the microcontroller:

Considerations for Self Boot

Microcontroller memory is often in short supply. By configuring the SigmaDSP processor to self boot from an external EEPROM, most of the SigmaDSP program can be excluded from your microcontroller code. However, there are some considerations and common pitfalls to take into account before making this decision:

Overview of Included Files

The example code is separated into the following files:

The example code requires some files exported by SigmaStudio which describe the contents of the SigmaStudio project, including register values and parameter locations.

Most applications do not require these files to be altered.

SigmaStudio also exports the following files which are not used by the example code.

Example Code Change Log

Page Tools

Analog Devices Uses Cookies for Enhanced Online Performance

Some cookies are required for secure log-ins but others are optional for functional activities. Our data collection is used to improve our products and services. We recommend you accept our cookies to ensure you’re receiving the best performance and functionality our site can provide. For additional information you may view the cookie details. Read more about our privacy policy.

The cookies we use can be categorized as follows:

Strictly Necessary Cookies: These are cookies that are required for the operation of analog.com or specific functionality offered. They either serve the sole purpose of carrying out network transmissions or are strictly necessary to provide an online service explicitly requested by you. Analytics/Performance Cookies: These cookies allow us to carry out web analytics or other forms of audience measuring such as recognizing and counting the number of visitors and seeing how visitors move around our website. This helps us to improve the way the website works, for example, by ensuring that users are easily finding what they are looking for. Functionality Cookies: These cookies are used to recognize you when you return to our website. This enables us to personalize our content for you, greet you by name and remember your preferences (for example, your choice of language or region). Loss of the information in these cookies may make our services less functional, but would not prevent the website from working. Targeting/Profiling Cookies: These cookies record your visit to our website and/or your use of the services, the pages you have visited and the links you have followed. We will use this information to make the website and the advertising displayed on it more relevant to your interests. We may also share this information with third parties for this purpose. Decline cookies

©1995 — 2022 Analog Devices, Inc. All Rights Reserved

Источник

Adblock
detector