Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Привет!
Кто-нибудь имеет положительный опыт в ковырянии микросхем, которые воспроизводят мелодии (кодеки, миди, mmf) ?
Достался мне тут один Самсунг с YMU762C - удалось заставить её играть полноценные МИДИ и MMF-ки (SMAF).
В итоге имеем: FM синтезатор, Таблично-волновой синтезатор (40 инструментов одновременно), воспроизведение оцифровок, жирный FIFO буфер (до 8 кБ), параллельная шина 8 бит, эквалайзер и дифференциальный усилок для динамика на пол-ватта!!! Да это круче, чем VS1063 будет!
Об этом чуть позже...
Это сообщение отредактировал Gospodin_Riba - Jun 8 2018, 12:48 PM
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
У меня есть такой мануал, он какой-то скудный. По-видимому линия А0 - это шина "адрес/данные", а в мануале нет информации ни о командах, ни карты распределения внутренних ячеек. Как вообще управлять этой железякой? Может быть где-то такая информация была в мануалах ранних версий синтезатора, в мануале на YMU759, например, тоже глухо.
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
QUOTE (sas_75 @ Jun 9 2018, 02:41 AM)
У меня есть такой мануал, он какой-то скудный. По-видимому линия А0 - это шина "адрес/данные", а в мануале нет информации ни о командах, ни карты распределения внутренних ячеек. Как вообще управлять этой железякой? Может быть где-то такая информация была в мануалах ранних версий синтезатора, в мануале на YMU759, например, тоже глухо.
На YMU759 (MA-2) и на YMU762 (MA-3) в даташитах только электрическая спецификация! Там ни слова о назначении и разбитовки регистров, не говоря уже о том как её инитить и управлять.
На YMU757 (MA-1) в даташите есть карта регистров, но она (микросхема) не интересна - всего 4 канала FM-синтезатора вместо 40 каналов (32 FM + 8WT) + ADPCM в YMU762
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Референсный код от Ямахи, там же документация на программирование YMU762 и много MMF-файлов для тестирования.
Для запуска нужно изменить содержимое в файлах: mamachdep.h и mamachdep.c (подробнее в ридми и в доках Ямахи):
1) Рассчитать множитель и делитель PLL, для получения нужной тактовой частоты YMU762( надо 55.296 MHz). Использую генератор на 14.31818 МГц (другого просто нет под рукой!):
CODE
#define MA_ADJUST1_VALUE (29) /* register bank 1, ID #5 */ #define MA_ADJUST2_VALUE (112) /* register bank 1, ID #6 */ #define MA_PLL_OUT (55298) /* PLL Output value (kHz) ex.:55296 */
2) Задефайнить адреса регистров или написать функции чтения-записи в регистры:
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
Ну и наконец, мой рабочий проект в Keil для STM32F407 (отладчная плата STM32F4Discovery). Воспроизведение MMF файла, зашитого во Flash контроллера. Обновление данных - по внешнему прерыванию от YMU762. Есть пауза и снятие с неё.
Для воспроизведения MIDI вместо MMF нужно исправить однуконстанту в:
CODE
MaSound_Create(MASMW_CNVID_MMF);
MASMW_CNVID_MMF заменить на: MASMW_CNVID_MID.
Для синхронизации мелодии используются внутренние ресурсы YMU762: секвенсор и таймеры!
Возможно задание формата для воспроизведения оцифровок, отдельных звуков - подробно в документации (в архиве сорца от Ямахи постом выше).
Это сообщение отредактировал Gospodin_Riba - Jun 9 2018, 09:05 AM
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
QUOTE (viv55 @ Nov 22 2018, 04:12 PM)
А не пробовали подружить YMU762 с AVR?
Полагаю, в ATmega128 код влезет. А YMU762 присоединить к интерфейсу внешней памяти. И даже без регистра-защёлки можно! Адресной линией рулить через порт.
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Группа: Автор
Сообщений: 7625
Пользователь №: 35582
Регистрация: 3-August 08
Место жительства: Украина, Харьков
Хренасе там кода на десятки килобайт на эту говно пищалку трещалку, еще и жрать будет как паровоз наверняка под сотню миллиампер. Проще с карты памяти играть wav-ки в которых записаны эти ваши миди эмулятором.
Группа: Автор
Сообщений: 3767
Пользователь №: 39917
Регистрация: 30-November 08
Место жительства: Архангельская область
QUOTE (vitalik_b @ Nov 24 2018, 10:47 AM)
Хренасе там кода на десятки килобайт на эту говно пищалку трещалку, еще и жрать будет как паровоз наверняка под сотню миллиампер. Проще с карты памяти играть wav-ки в которых записаны эти ваши миди эмулятором.
Группа: Автор
Сообщений: 2137
Пользователь №: 116127
Регистрация: 26-April 16
QUOTE (vitalik_b @ Nov 24 2018, 10:47 AM)
Хренасе там кода на десятки килобайт на эту говно пищалку трещалку, еще и жрать будет как паровоз наверняка под сотню миллиампер. Проще с карты памяти играть wav-ки в которых записаны эти ваши миди эмулятором.
Демосцена точно не для вас
Аргумент в пользу YMU762 : можно кучу тем разместить в самой FLASH микроконтроллера, а WAV-ки отожмут 100% памяти моментально . И не надо SD-карту подрубать
Ну и синтез , трекерную музыку никто не отменял.
короче, тот кто не в теме, пасти тут нечего
P.S. сорцы кастрировать можно, если всё не нужно. Те же MMF-ки играть - в 10K должно уложиться ))) вперед, энтузиасты, - к новым экспериментам и новым результатам!
Это сообщение отредактировал Gospodin_Riba - Nov 25 2018, 07:32 AM
--------------------
По всем вопросам пишите на почту: repstosw2018 [собака] gmail [точка] com Энтузиазм заканчивается, когда начинается Кризис. Рождается Капитализм :)
Группа: Автор
Сообщений: 3767
Пользователь №: 39917
Регистрация: 30-November 08
Место жительства: Архангельская область
Согласен с Рыбой. В случае с YMU762 мы тратим кучу памяти для работы с микросхемой синтезатора, зато сами мелодии занимают очень мало места, в отличии от WAV, который при таком же качестве (в расчёт берём звук без ухудшения качества звучания высоких частот) моментально сожрёт кучу мегабайт памяти, при этом внутренней памяти МК уже не хватит для хранения большого кол-ва мелодий, понадобится цеплять внешнюю память. Кроме того, в YMU, насколько я знаю, встроен УНЧ. В общем есть свои плюсы и минусы.
Это сообщение отредактировал Zlodey - Nov 25 2018, 02:53 PM