Перейти к содержанию
    

to Dron_Gus

Попробывал скомпилировать Ваш проект под IAR 5.30 выдал несколько ошибочек...

Сначала была ошибка в коде начальной инициализации проца cstartup.s79 (я так понимаю он просто старый), я его выкинул и взял cstartup.s из иаровских недр ))

 

Осталось две таких вот ошибки - не знаю что с ними делать...

 

Error[116]: Section type missing O:\ARM_IDE\_Projects\7S256_MP3\IAR\SAM7_MP3\mp3dec\real\arm\asmmisc.s 39
Error[116]: Section type missing O:\ARM_IDE\_Projects\7S256_MP3\IAR\SAM7_MP3\mp3dec\real\arm\asmpoly_iar.S 39

 

В обоих файлах ругается на:

RSEG    CODE(2)            
CODE32

 

если убрать эти строчки, то ИАР выдает такое вот окошко (в аттаче)

post-34798-1245051691_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По порядку.

 

У меня SVN не просит логина и пароля. Я попробовал скачать - что-то похожее есть в ревизии №93. Могу выслать, если у Вас не получится скачать (я пользуюсь TortoiseSVN).

 

По сути с Вашим кодеком у Вас все только упрощается. Т.к. он не имеет никаких настроек, то ему не нужен и i2c, через который в tlv настраивается громкость, баланс и еще что-то. Остается только i2s (в атмеле реализуется через ssc), через него гонится аудио данные. Данные гонятся точно так же как и для tlv, за исключением того, что надо генерировать клок. Он, вроде как, генерируется PWM'ом, т.к. ssc имеет ограниченное количество делителей в режиме мастера. Поэтому выход PWM'а заведен на клок SSC. Как именно, надо смотреть по исходникам-документации.

 

IAR 5.** я не использую, так что подсказать ничего толкового не могу. Похоже он ругается на директивы размещения кода в сегнментах. Попробуйте посмотреть, как это сделано в cstartup.s (от нового ИАРа) и сделать так же.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Скачал с помощью другой SVN-ки 93-й билд плеера, впрочем старый DAC у автора там вплоть до 95-го билда.

Компилю пока-что в WinARM, т.к. IAR 4.x для ковыряния в проекте от Dron_Gus пока нету...

Впаял CS4331 (проводки не длинее трех сантиметров), прошил самбой SAM7S, плеерок заработал... :biggrin:

Причем в этом билде PLL работает еще со старым кварцем, поэтому файлы немного быстрее воспроизводятся...

 

Есть пара вопросов (в частности к Dron_Gus):

- Со 192кбит/с файлами играет еще хорошо, а вот на 320 кбит/с уже подтормаживает - это нормально?

- Бывают моменты когда плеер перепрыгивает внутри файла или вообще затыкается, бывает что каналы местами меняются - почему? У меня есть предположение что это из-за отладки, которая идет в UART при декодировании...

 

Попутно оживил второй плеерок на LPC2148(CrossworksARM, моно, внутренний DAC, тот который с оффсайта NXP), перенаправил всю отладку в UART0 - поскольку такой роскоши как дебаггер у мя нету )))

прикол в том что стерео-файлы не надо пережимать в моно, как это написано в мануале - играет походу один канал стерео файла, 320кбит/с файлы откровенно тормозят - 128кбит/с еще нормально воспроизводятся.

По нему есть тоже вопросы к спецам:

- Кто нибудь переделывал его под стерео с присобачиванием внешнего DAC? (там в архиве есть lpc_io_stereo.c файлы), если да, то как эт сделать, предположим с CS4331 ?

 

Спасибо всем, кто откликнулся!!!!

Изменено пользователем Ivan Kuznetzov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По поводу плеерка на LPC2148 (NXP-й апноут под CrossworksARM, моно, внутренний DAC).

 

По нему вопрос такой, мне никак не удется собрать его под KEIL, кто нибудь пробовал пересобирать?

И еще вопрос делал кто нибудь проигрывание стрима из внутренней флэши, а не с карточки?

 

бросьте примером, поглядеть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По поводу тормозов. Вполне возможно, что на 320 будет подтормаживать, но мне казалось, что Helix (https://datatype.helixcommunity.org/Mp3dec), с которым эспериментировал я, не тормозил. Да и на сайте пишут, что ему надо всего 30 МГц. Хотя, вроде у немцев он и используется. Тогда не знаю в чем может быть проблема. Попробуйте немного оверклокнуть процессор. :)

 

Играние стрима из феша тут кто-то выкладывал в качестве примера, попробуйте поискать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

тот пример хитро заточен под атмел :wassat:

 

хотелось бы под LPC, есть много нюансов как я понял.

 

кстати пример от NXP собирается из под оболочки Rowley обычным гнушным gcc, возможно по этому и притормаживает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Самому декодеру пофиг, чей проц. :) Вот чтение с катрочки и выпихивание данных по i2s это на совести программиста. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Немного продвинулся в проекте с LPC2148:

1) Выкинул старый EFSL, заменил на свеженькую FatFS от Чана (теперь читает SDHC - проверил с картой объемом 16Гб)

2) Декодер не тормозит, но как-то подхрипывает на всплесках громкости в файле (т.е. если файл в начале тихий - то не подхрюкивает)

3) Проект пока собираю под Crossworks ARM...

Изменено пользователем Ivan Kuznetzov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...