Поддержка аудио библиотеки Nucleo-L476RG

Pareidolialjebus
Пн, 01 октября 2018 г., 8:40 вечера
Всем привет

Я приехал в STM32 Arduino после того, как создал контроллер MIDI, который объединяет несколько LFO, чтобы запутать различные синтезаторы программного обеспечения и хорошо работает, но я обнаружил, что при запуске 96 отдельных LFO это делает Arduino Mega немного, чтобы сказать еще меньше всего, чтобы сказать, что меньше всего, чтобы сказать еще меньше всего, чтобы сказать наименее, сказать, что меньше всего. Я планирую переместить свой проект в STM32, и он чувствует себя довольно прямолинейным, хотя и с небольшими изменениями, чтобы учесть 3.3V ограничивает систему, а также некоторые изменения в физическом интерфейсе, используя сенсорное управление вместо кнопок. В любом случае, мне было интересно, насколько весело было бы перефразировать некоторые аппаратные голоса, и в итоге пролетел по другой кроличьей норе, играя с библиотекой Моззи на ООН, а также купив несколько синих таблеток (а затем понимают, что они исходят из Китай, так что еще около 6 недель, пока они не прибудут) с планами попробовать моззи на тех..А потом я обнаружил Teensy, и это отличная аудио библиотека.

В любом случае, я бродю - я просто хотел дать вам немного фона - мне нужно спросить, пока я жду тех синих таблеток, у меня есть время, чтобы тратить время, и удивился, есть ли способ добавить поддержку либо Моззи, либо Аудио -библиотека Teensy, либо есть какая -то другая способная аудио библиотека, которая будет работать на доске ядер с ядром STM, которая также использует DAC?

Конечно, если есть еще одно ядро, которое даст мне то, что нужно, счастлив использовать это вместо этого.

Мадиас
Пн, 01 октября 2018 г., 22:22
Аудио (i2s, mozzi, ...) действительно не реализован в официальном ядре из коробки (но это может быть изменено в будущем - я надеюсь на это).
  • Chismicro много играл с аудио и «GenericCore» на F4, используйте функцию поиска.
  • Я сделал круговой буфер I2S DMA (код адаптации) на F4, который * должен * работать на официальном ядре, см. Здесь ViewTopic.PHP?F = 18&t = 4095 и прочитайте это: ViewTopic.PHP?F = 48&t = 4109
  • Для серийного миди, возьмите это: https: // github.com/fortyseveneffects/ar ... di_library (Эта удивительная библиотека работает почти на каждой *Duino Platform, которую я пробовал). Но для «MIDI только» я не буду использовать F4, но синюю таблетку (даже это устройство будет уклоняться от MIDI и подсчитывает холостые круги)
  • USB-MIDI: никоим образом не реализовано (оба: универсальный или официальный)-возможно, Арпусс преобразует свою библиотеку USB-HID из F1 Roger Core в *HAL.
  • Моззи: Была попытка TFRED несколько месяцев назад (но также и F1 Roger Core): ViewTopic.PHP?f = 15&t = 2936 - Насколько я помню, библиотека Mozzi - это шедевр, но нуждается в таймере (и код низкого уровня?) и так далее, так что я уверен, что он не будет компилировать из коробки.
Пожалуйста, имейте в виду, что для общего ядра больше нет реальной поддержки или обновлений (по крайней мере, не за последние шесть месяцев).

Мадиас
Пн, 01 октября 2018 г., 22:27
Но, честно говоря: на данный момент (!) для аудио/MIDI любой F103 и Rogers Core - лучший выбор для игры вокруг. На этом форуме есть много примеров, и вы можете использовать USB-MIDI (поэтому плата признана в качестве стандартного устройства MIDI USB). Имейте в виду, что с «лучшим» F1 MCU (STM32F103RET и UP) вы также создаете в DAC (12-битные) и два независимых интерфейса I2S (I2S Audio DAC доступны намного до 1 евро, поэтому для 10 пунктов около 2-5 евро. ) Но для дальнейших проектов я перейду в F4 (+++ МГц+плавающая точка!) и официальное ядро. Для USB MIDI я использую простой «дочь дочернего плана», пока не будет доступна USB MIDI (и я считаю, что это не будет в ближайшем будущем - USB MIDI предназначена только для интереса для нескольких «уродов» ;) )

Chismicro
Вт 02 октября 2018 г. 4:23
Chismicro много играл с аудио и «GenericCore» на F4, используйте функцию поиска. Привет, Матиас,
спасибо за упомянутое, что.
Я также играл с Rogers Core:
https: // github.com/chrismicro/bluepillsound
По моему мнению, лучше перейти к более сильной MCU, чем STM32F103, потому что с более сложным звуком, этот MCU скоро достигает своих пределов.
Я также не рекомендую использовать L476, потому что этот MCU создан для применений с низкой мощностью и может работать только до 80 МГц. Лучшим выбором является F407, а у Совета Discovery F407 есть сборка в Audio DAC.
Здесь Я попробовал Nucleo F401, потому что он лежал вокруг. Но F407 лучше.
Теперь я заказал F411 Discovery Потому что это дешевле, чем открытие F407. Посмотрим, как это работает.

Лучше всего было бы перенести Аудио-списка от раннего холма (ESP) для STM32. Наверное, это не было бы слишком сложно, и у него есть сборка в MP3 -декодере.

Pareidolialjebus
Вторник 02 октября 2018 г. 8:40 вечера
Спасибо, оба за ваши ответы. Я ошеломлен. Я пришел домой сегодня, решил приехать сюда и ответить вам обоим, а затем успокоиться, чтобы начать переносить свое существующее программное обеспечение MIDI на доску Nucleo. Но угадай что? Мои китайские доски прибыли. Я заказал их 20 -го числа, в диспетчерской записке говорится, что они прибудут в ноябре, но и мой программист, и доска ждали меня только через 12 дней. Я не думаю, что это вообще плохо.

У меня мигает и работает, я собираюсь начать возиться с Моззи.

Странно то, что я пытался понять, что делать с загрузчиками и вещами, какое -то время обошел круги, но не смог загрузить загрузчик, используя мой клон ST Link. Решил установить ядро ​​Роджера и попробовать опцию командной строки, используя инструкции здесь: https: // github.com/rogerclarkmelbourne/ ... плохой доски

Но для чистого дьявола я выбрал ST Link в качестве метода загрузки и просто попытался загрузить эскиз... сработал в первый раз и теперь мигает..
..время попробовать моззи.

Стыд слышать, как USB MIDI для "Freaks". Кажется, я тоже урод! :)

Мадиас
Вторник 02 октября 2018 г. 9:15 вечера
Если честно и * очень * личное мнение: я всегда использую клон ST-Link для загрузки (только исключение: Maple Mini Clone). У меня так много проблем в прошлом (особенно на моем MacBook Pro 13 '2009). ST-Link всегда работает для меня, независимо от того, какая доска (F1 до F4) или OS. У меня слишком много вещей для отладки, поэтому я не хочу «отлаживать» метод загрузки. (Ленивый? Да!)
О Freaks: Да, мы**Freaks делают синтезаторы с STM32F *** ;) Но ни на Energia (вариант Ti из ядер Cortex MX), ни Chipkit (PIC32) [я оставляю в стороне официальные «Arduino» продукты, потому что они ненадежны и слишком медленные для «реальных» синтезатора], не так много уродов, как здесь. - И (я говорю за Rogers Core). Никакая реализация "Arduino" не имеет такой крутой "из коробки" (MIDI USB) и примеры, как на STM32Duino.

Мадиас
Вторник 02 октября 2018 г., 21:20
Кстати: настоящий крутой «кандидат» для синтезатора таково: https: // www.aliexpress.com/item/1pcs-st ... 03267.HTML

Pareidolialjebus
Вторник 02 октября 2018 г., 21:30
[Мадиас - Вторник 02 октября 2018 г. 9:20 вечера] - Кстати: настоящий крутой «кандидат» для синтезатора таково: https: // www.aliexpress.com/item/1pcs-st ... 03267.HTML
Выглядит хорошо - мне нравится форм -фактор и встроенное дополнительное оборудование. Вы пробовали Teensy Out? У библиотеки, кажется, есть все виды забавных вещей. Это относительно дорогой совет в 28 фунтов стерлингов в Великобритании, но поддержка выглядит великолепно.

Мадиас
Вторник 02 октября 2018 г., 21:52
Позор на мой, у меня нет подростковой доски. Почти все синтезатор/аудио, связанный с «Ардуно -землей», было затронуто рукой Пола Дж. В прошлом. Я адаптировал многие из его кодов. Teensy Boards (в ​​отношениях с STM32 Aliexpress) дороги, но с превосходным&Выдающаяся поддержка. Если вы можете себе это позволить, купите один. Вы не будете платить за оборудование (хорошо, макеты доски также действительно хорошие!), но вы заплатите Полу и его компании (надеюсь).
И Teensy 3.6 - это аппаратное обеспечение MCU как должно быть: https: // www.PJRC.com/store/teensy36.HTML

Chismicro
Ср. 03 октября 2018 г., 3:43
Да, программное обеспечение для подростков Паулс Стоффреген действительно хорошо.
Я думал о том, чтобы перенести некоторые из его вещей, но потом я решил: нет
Почему? Потому что он приложил столько усилий в своих вещах, и он зарабатывает немного денег, продавая свои подростки, поэтому я думаю, что лучше не уничтожать его рынок, переносив программное обеспечение в дешевые stm-unucleos.
Вероятно, не так продвинуто, как синтезаторы Pauls, есть другие вещи.
Полс сделал инструмент графического синтезатора здесь.
Здесь Я адаптировал еще один синтезатор с графическим интерфейсом некоторых досок STM32.
Это не так продвинуто, как версия Pauls, но, тем не менее, довольно хорошо, я думаю.
Не все звуковые алгоритмы оригинала уравнение композитор реализованы, но если вам не нужно использовать графическую часть, их, вероятно, легко скопировали.
Тогда библиотека композиторов уравнения должна быть такой же продвинутой, как библиотека Mozzi.

Кстати: я видел, что у L476 есть интерфейс SAI вместо интерфейса I2S. Я предполагаю, что водители I2S для других досок не могут быть легко перенесены в SAI. верно?

Chismicro
Ср. 03 октября 2018 г., 4:14
[Мадиас - Вторник 02 октября 2018 г. 9:20 вечера] - Кстати: настоящий крутой «кандидат» для синтезатора таково: https: // www.aliexpress.com/item/1pcs-st ... 03267.HTML
Да, хорошая доска. Каким -то образом я забыл, что сделал просто Пример композитора уравнения для этого.

Мадиас
Ср. 03 октября 2018 г. 5:49
[Chismicro - Ср. 03 октября 2018 г. 3:43] - Кстати: я видел, что у L476 есть интерфейс SAI вместо интерфейса I2S. Я предполагаю, что водители I2S для других досок не могут быть легко перенесены в SAI. верно?
Я думаю, что SAI совместим с I2S, но вы правы, могут быть некоторые другие записи регистрации, необходимые для получения «режима совместимости I2S». Кроме того, Sai очень интересен, есть дешевый Audio DAC, поддерживающий SAI. Преимущество: вы можете обрабатывать несколько потоков ввода -вывода с SAI.

Grumpyoldpizza
Ср. 03 октября 2018 г. 14:15
[Мадиас - Ср. 03 октября 2018 г. 5:49] -
[Chismicro - Ср. 03 октября 2018 г. 3:43] - Кстати: я видел, что у L476 есть интерфейс SAI вместо интерфейса I2S. Я предполагаю, что водители I2S для других досок не могут быть легко перенесены в SAI. верно?
Я думаю, что SAI совместим с I2S, но вы правы, могут быть некоторые другие записи регистрации, необходимые для получения «режима совместимости I2S». Кроме того, Sai очень интересен, есть дешевый Audio DAC, поддерживающий SAI. Преимущество: вы можете обрабатывать несколько потоков ввода -вывода с SAI.
https: // github.com/grumpyoldpizza/ardui ... Спутники/i2s

Работает как очарование с микрофоном I2S ...

Периферийное устройство SAI более сложное, чем i2s от SPI. Это позволяет более 2 канала и различные кодировки слотов ...

Chismicro
Сб 6 октября 2018 г. 6:11
[Grumpyoldpizza - Ср 03 октября 2018 г., 14:15] - https: // github.com/grumpyoldpizza/ardui ... Спутники/i2s

Работает как очарование с микрофоном I2S ...
Потому что я получил L432nucleo, я могу попробовать свой Ubuntu. Но кажется, что у openocd есть проблема:
.arduino15/packages/grumpyoldpizza/harpware/stm32l4/0.0.28/Tools/linux/openocd/bin/openocd.Bin: Ошибка при загрузке общих библиотек: Libudev.так.1: невозможно открыть файл общего объекта: нет такого файла или каталога

Grumpyoldpizza
Пн, 8 октября 2018 г., 14:59
[Chismicro - Сб 6 октября 2018 г. 6:11]] -
[Grumpyoldpizza - Ср 03 октября 2018 г., 14:15] - https: // github.com/grumpyoldpizza/ardui ... Спутники/i2s

Работает как очарование с микрофоном I2S ...
Потому что я получил L432nucleo, я могу попробовать свой Ubuntu. Но кажется, что у openocd есть проблема:
.arduino15/packages/grumpyoldpizza/harpware/stm32l4/0.0.28/Tools/linux/openocd/bin/openocd.Bin: Ошибка при загрузке общих библиотек: Libudev.так.1: невозможно открыть файл общего объекта: нет такого файла или каталога
Вы должны установить 32 -битные библиотеки Compatibilty. Думал, что это так сказано в инструкциях.

STM32L476RG