• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Вывести с RTL четре канала аудио

sharikov

Active member
Возможно ли вывести с RTL 3 а лучше 4 звуковых канала 48 кГц, 16 бит ?
Если надо поставлю чип AM.
Это не для музыки, нужно генерить многоканальные тональные посылки сложной формы. Частоты в районе 5-8кГц.
 

sharikov

Active member
не пойдет: spi :-(
и стоит как чугунный мост.
На spi стабильную частоту сэмплирования 48КГц в RTL не сделать.
Тут нужен i2s или pcm audio dac чтобы аудиопоток из sdram гнал dma контроллер - только такой вариант будут гарантированно работать при фоновом трафике wifi и других конкурирующих процессах.
 

pvvx

Активный участник сообщества
I2S на RTL 2 шт. Только оно может выводить без разрывов (с текущим HAL) в варианте ШИМ (или sigma-delta) типа 96 бит 2 канала по DMA.
Так-же 2 канала I2S на пределе частоты их CLK не успевает совместно с CPU работать из SDRAM для генерации ШИМ. Будут дыры (рассинхронизации) или надо менять приоритеты в HAL. По этому буфера DMA надо распределять по разным памятям (разным внутренним шинам SoC). Для внешних I2S DAC это не актуально - там частоты в десятки раз ниже...

SPI (с текущим HAL) не может выводить ШИМ без разрывов.
Ставьте 2 Stereo DAC на I2S - выйдет 4 канала.
CPM не освоена и HAL к нему нет.
MI шина требует внешний синхро.
Только вот непонятно, зачем 4-ре аналоговых выхода? Sound-бластер 5.1 что-ли :)?
 
Последнее редактирование:

Юрий Ботов

Moderator
Команда форума
А может вообще что то древнее присобачить типа простейшего синтезатора - фантазирую: ay8910 (3 канала) а то и что посерьезнее YM3812. Они на али копейки стоят... И трафик к ним будет минимальным: послать частоту (коэф. деления) и длительность - а дальше он сам...
 

pvvx

Активный участник сообщества
А может вообще что то древнее присобачить типа простейшего синтезатора - фантазирую: ay8910 (3 канала) а то и что посерьезнее YM3812. Они на али копейки стоят... И трафик к ним будет минимальным: послать частоту (коэф. деления) и длительность - а дальше он сам...
Я думаю, что тут опять ошибки в начальном планировании устройства. Зачем нужны в простых вещах 4-ре одновременно работающих канала аудио?
Мультиплексор и один аудио выход в 99% достаточен.
Микс в один канал проще делать в коде. Для многоканального синтеза обычно используют DSP и прочую специализированную лабуду типа программируемой логики, в которой изначально есть интерфейсы для их вывода.

RTL871x– это контроллер общего применения и основная задача у него – WiFi. С имеющимся SDK с RTOS у него время реакции 1..2 мс (минимальный тик системы RTOS * 2 для асинхронных событий). Всё остальное – это “спортивный интерес”.
 
Последнее редактирование:

sharikov

Active member
Я думаю, что тут опять ошибки в начальном планировании устройства. Зачем нужны в простых вещах 4-ре одновременно работающих канала аудио?
С каких пор 8711AM стали простыми ?

Мультиплексор и один аудио выход в 99% достаточен.
Думал насчет мультиплексора: я их не синхронизирую каналы учитывая буферизацию dma.
Тем более что надо генерить минимум 3 канала одновременно. 4- вообще шикарно.

RTL871x– это контроллер общего применения и основная задача у него – WiFi.
У китайцев плохо с креативностью. И wifi очень даже будет использоваться вместе с web сервером.
2 канала i2s решает вопрос. Главное чтобы оба были выведены на пины модуля.
 

pvvx

Активный участник сообщества
С каких пор 8711AM стали простыми ?
А где сказано, что они "простые"? Есть специализированные MCU, а этот общего назначения, как если сравнивать i86 и какой DSP. Сброка в SoC у RTL и учитывает это - пачка стандартных контроллеров и ARM CPU для обслуживания простых задач IoT. В принципе сбалансированный чип по характеристикам встроенного и частотам CPU да общим потреблением, в отличии от ESP-32S. RTL8195AM с встроенным USB пока не доступен всем. Его быстрее заменит RTL8711Bx серия, но там будет вечное: "мало памяти".
А далее, "как грибы после дождя", полезут MCU с несколькими МБ RAM - тут RTL8711AM и позволяет вам "за дешево" откатать решения на будущее.
Web сервис, если строиться на стандартном мышлении, требует от 200 кило RAM только для буферов LwIP и структур psb с TIME_WAIT. Поизучайте этот вопрос. Сокеты сожрут ещё за 100, а если HTTPS - то сразу за 200. Плюс RTOS со своими стеками и плюс WiFi. В итого это дело никак не лезет в 512 кило RAM, а учитывая что в RAM ещё садиться код, который должен исполняться при занятости Flash во время програмирования, то требуется проц с минималкой в 1 Мег RAM. Для линукс подобных, с учетом его подхода (90% лишнего кода) требуется от 16 МБ RAM, при условии полной оптимизации системы под задачи :) OpenWRT и является примерно тем направлением.
У китайцев плохо с креативностью. И wifi очень даже будет использоваться вместе с web сервером.
2 канала i2s решает вопрос. Главное чтобы оба были выведены на пины модуля.
Они торчат, эти I2S - вроде никаких проблем с ними нет.
SPI никогда не предназначался для непрерывных операций - это блочное устройство.
 
Последнее редактирование:

Ugene

New member
Возможно ли вывести с RTL 3 а лучше 4 звуковых канала 48 кГц, 16 бит ?
Если надо поставлю чип AM.
Это не для музыки, нужно генерить многоканальные тональные посылки сложной формы. Частоты в районе 5-8кГц.
Почему выбираете дешевые IoT платформы? Возьмите omega2. за 5 баксов получите всё что нужно в разы. Не думаю, что вы собираетесь налаживать массовое производство своего девайса.
 

pvvx

Активный участник сообщества
Почему выбираете дешевые IoT платформы? Возьмите omega2. за 5 баксов получите всё что нужно в разы. Не думаю, что вы собираетесь налаживать массовое производство своего девайса.
Там те-же самые вопросы. Один SPI и задержки между блоками ещё больше и система на omega2 не реал-тайм, не укладывается в большинство параметров требуемых для простых решений IoT. Потребление завышено, время старта системы - минуты, время реакции системы на уровне от сотен мс. Различий, кроме большей стоимости и сложностей в доступности получения для домашней поделки от МИНИ 3 Г WI FI Hotspot IEEE 802.11b/g/n 150 Мбит USB Беспроводной Маршрутизатор Портативный Черный купить на AliExpress не имеет.
 
Последнее редактирование:
Сверху Снизу