|
|
  |
STM32 mp3 playback |
|
|
|
Jan 24 2009, 17:31
|

Любитель
    
Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695

|
Цитата(A. Fig Lee @ Jan 24 2009, 21:22)  Хорошо бы иметь миниплатку - вставил туда microSDCard, а на выходе - звук. чтоб понимала FAT32, VLSI - не хватит. Один декодер, без контроллера, конечно-же ничего воспроизвести не сможет. Я тоже буду юзать STM32. Однако думаю взять именно VS1011e в качестве декодера и аналогового процессора. Всё равно без доп. чипа не обойтись, так пусть это будет не просто ЦАП. Для любительской поделки самое то  Ну а проц будет выполнять управление всей системой (чтение с карточки, вывод на ЖКИ и т.д) - в общем-то стандартная модель. Хотя интересно было-бы возложить задачи декодирования на проц - всё равно должно остаться время и для обслуживания остального...
|
|
|
|
|
Jan 24 2009, 21:50
|

Знающий
   
Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467

|
Цитата(Rst7 @ Jan 24 2009, 15:39)  Я думаю в VS1053 вполне войдет легенькая имплементация FAT32. Там же больше 1К инструкций и 0.5 килослов ОЗУ данных есть для пользовательского софта, вполне должно войти. Софт для разработки, мануал по камню и т.д. - все есть на сайте VLSI. elm-chan например файл-систем занимает как минимум несколько килобайт. http://elm-chan.org/fsw/ff/en/appnote.htmlмаловероятно что в VLSI чето влезет. опять же - не знаю где ее в России берут, официально VS1053 со товарищи - 16 евро за штуку. проще пожалуй один DAc 3-х долларовй взять в довесок. CS4344 etc..
--------------------
Верить нельзя никому, даже себе. Мне - можно.
|
|
|
|
|
Jan 25 2009, 12:02
|

embedder
  
Группа: Свой
Сообщений: 264
Регистрация: 11-05-05
Из: Казань
Пользователь №: 4 911

|
Цитата(A. Fig Lee @ Jan 24 2009, 20:22)  тоже такую ваяю. Только на LPC2148. VLSi i STA013 оффициально - недешевы изза лицензий. Плюс в АРМ можно и другие декодеры вогнать плюс загрузить чемто. лучшийдекодер судя по отзывам: https://datatype.helixcommunity.org/Mp3dec подзаточен под АРм. Что-то не понял где там исходники скачать, или он платный? P.S. в последнюю VLSI много что влезет, там плагины даже загружать можно...
--------------------
Мечты стареют куда быстрее мечтателей… Стивен Кинг. "Ловец снов"
|
|
|
|
|
Jan 26 2009, 00:31
|

Знающий
   
Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467

|
Цитата(zksystem @ Jan 25 2009, 07:02)  Что-то не понял где там исходники скачать, или он платный? P.S. в последнюю VLSI много что влезет, там плагины даже загружать можно... внутри там, в проекте. вот оттуда: ftp://ftp.circuitcellar.com/pub/Circuit_C...ymanski-194.zipплагины загружать можно? и что они могут на 1 килобайт? не, один только сектор занимает 512 байт. чтоб доступится до второго, надо будет опять найти аллокейшн таблицу и сначала допрыгать до нужного сектора. в реалтайм - не верю,что получится.
--------------------
Верить нельзя никому, даже себе. Мне - можно.
|
|
|
|
|
Jan 26 2009, 01:47
|

embedder
  
Группа: Свой
Сообщений: 264
Регистрация: 11-05-05
Из: Казань
Пользователь №: 4 911

|
Цитата(A. Fig Lee @ Jan 26 2009, 03:31)  внутри там, в проекте. вот оттуда: ftp://ftp.circuitcellar.com/pub/Circuit_C...ymanski-194.zipплагины загружать можно? и что они могут на 1 килобайт? не, один только сектор занимает 512 байт. чтоб доступится до второго, надо будет опять найти аллокейшн таблицу и сначала допрыгать до нужного сектора. в реалтайм - не верю,что получится. VS1053 - Ogg Vorbis/MP3/AAC/WMA/MIDI audio codec Decodes multiple formats Ogg Vorbis MPEG 1 & 2 audio layer III (CBR+VBR+ABR), layers I & II optional MPEG4 / 2 AAC-LC(+PNS), HE-AAC v2 (Level 3) (SBR + PS) WMA4.0/4.1/7/8/9 all profiles (5-384 kbps) WAV (PCM + IMA ADPCM) General MIDI 1 / SP-MIDI format 0 Encodes two different formats from mic/line in mono or stereo Ogg Vorbis with software pluginIMA ADPCM энкодер с линейного входа или микрофона в OGG Vorbis загружается как плагин
--------------------
Мечты стареют куда быстрее мечтателей… Стивен Кинг. "Ловец снов"
|
|
|
|
|
Jan 26 2009, 08:37
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата чтоб доступится до второго, надо будет опять найти аллокейшн таблицу и сначала допрыгать до нужного сектора. Что значит "найти"? Последовательное чтение файла предполагает следующие переменные: var1 - Смещение в текущем секторе var2 - Номер сектора в кластере (может быть склеено вместе с п.1) var3 - Номер текущего кластера Собственно алгоритм последовательного чтения представляет из себя: 1. Чтение текущего сектора, определяемого как var2+clust_base+var3*количество_секторов_в_кластере. Или части сектора, тогда надо использовать еще и var1. 2. Проверка на невыход за пределы текущего кластера переменных 1 и 2, если произошел выход, то var3=FAT(var3) и var1=0, var2=0. И опять сначала. Процедура, реализующая получение содержимого таблицы FAT по номеру текущего кластера для FAT16/FAT31 суть всего-лишь чтение одного сектора FAT. Какие же проблемы?
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Jan 26 2009, 11:14
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата Как вариант. Хреновый вариант. Он добавит столько гемороя, что мама негорюй. Цитата Писал FAT16 на PIC18, использовал всего один буфер под сектор (512байт) Немудрено. И вообще, накладных расходов всего плюс одно лишнее чтение сектора на чтение одного кластера. Тем более, это же флеш, а не винт, голову смыкать не надо.
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Jan 26 2009, 11:20
|

Любитель
    
Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695

|
Цитата(Rst7 @ Jan 26 2009, 12:37)  Процедура, реализующая получение содержимого таблицы FAT по номеру текущего кластера для FAT16/FAT31 суть всего-лишь чтение одного сектора FAT. А для FAT32 всё иначе? Мне вот интересно, можно ли сделать файловую систему с поддержкой длинных имён (не хочу видеть уродливые 8.3 имена на своём диске), чтобы она влезла в небольшую флеш контроллера? Говорят, там требуются таблицы весом в сотни килобайт... Хотя в сети есть примеры таких реализаций даже для AVR. Как они это делают? Я пока ещё не работал с FAT. Но думаю, что длинные имена - это работа с юникодом. В теории, нужно ведь только понимать юникод для кириллицы и латиницы? А остальное исключить?
|
|
|
|
|
Jan 26 2009, 11:50
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата А для FAT32 всё иначе? Простите, я описался. Конечно, FAT32  Все точно так-же. Цитата Говорят, там требуются таблицы весом в сотни килобайт... Врут. Цитата В теории, нужно ведь только понимать юникод для кириллицы и латиницы? А остальное исключить? Ну если Вам не нужны всякие нанайские символы, то да. Длинные имена там вообще через одно место сделаны. Но все вопросы преодолимы.
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|