Подключение к внешнему ЦАПу по I2S

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить
Вымогатель припоя
Аватара пользователя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Имеется контроллер STM32F205 (корпус 64 пин). У этого контроллера есть две шины I2S. Контроллер будет декодировать mp3 с внешнего USB или SD носителя. Далее звук надо подать на ЦАП PCM1742. Как осуществить подключение? Какая то каша у меня в голове, никак не соображу.

Cижу конфигурирую выводы в STM32 MicroXplorer. Один из выходов I2S в режиме Master_with_clock:

I2S_CLK
I2S_WD
I2S_SD
I2S_MCLK - зачем это тактирование?

На PCM1742 так же присутствует вход для этого тактирования. Обязательно ли использовать I2S_MCLK с 6-й ноги порта С или же можно подать такт с ноги какого нибудь таймера? Спрашиваю потому что сейчас развожу плату и I2S перекрывается с ногами SDIO.

Интересная статья на этот счет: http://www.compeljournal.ru/enews/2011/2/8 Но надо ли подключать I2S_MCLK всё равно не пойму.

stm32.jpg
(98.83 КБ) 1367 скачиваний
PCM1742.jpg
(35.34 КБ) 1319 скачиваний
Нельзя всё знать, достаточно понимать.
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

http://www.classic.nxp.com/acrobat_down ... I2SBUS.pdf

Добавлено: Не посмотрел Вашу ссылку, у вас там уже и так переведенный аппноут на шину i2s. Что непонятного там написано?) Нарисовано даже))) на схеме только три сигнала.
А также выдержка из даташита на ваш ЦАП :
AUDIO SERIAL INTERFACE
The audio serial interface for the PCM1742 comprises a 3-wire synchronous serial port. It includes LRCK (pin 3), BCK (pin 1), and DATA (pin 2). BCK is the serial audio bit clock, which is used to clock the serial data present on DATA into the audio interface serial shift register. Serial data is clocked into the PCM1742 on the rising edge of BCK. LRCK is the serial audio left/right word clock used to latch serial data into the serial audio interface internal registers. Both LRCK and BCK must be synchronous to the system clock. Ideally, it is recommended that LRCK and BCK be derived from the system clock input, SCK. LRCK is operated at the sampling frequency, fS. BCK can be operated at 32 (16-bit, right-justified only), 48, or 64 times the sampling frequency. Internal operation of the PCM1742 is synchronized with LRCK. Accordingly, internal operation of the device is suspended when the sampling rate clock of LRCK is changed or SCK and/or BCK is interrupted at least for three bit-clock cycles. If SCK, BCK, and LRCK are provided continuously after this suspended state, the internal operation is resynchronized automatically within a period of less than 3/fS. During this resynchronization period and for a 3/fS time thereafter, the analog output is forced to the bipolar zero level, or VCC/2. External resetting is not required..
Ставим плюсы: )
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Я просто не пойму что на этот пин I2S_MCLK подавать. Дочитал datasheet на PCM1742. Выходит что МК сам будет подавать нужное тактирование на этот пин в зависимости от частоты сэмплирования и дискретизации. Так что ли??
PCM1742б.JPG
(80.73 КБ) 1137 скачиваний
P.S. Нашел схему отладочной платы:
Audio_Out.JPG
(22.61 КБ) 1254 скачивания
Нельзя всё знать, достаточно понимать.
Собутыльник Кота
Аватара пользователя
Сообщения: 2512
Зарегистрирован: Пн апр 06, 2009 19:33:29
Откуда: Молдова, Кишинев

Сообщение BCluster »

насколько я помню, это выход для тактирования ЦАПа, подключается к SCK. Можете его не использовать, но тогда нужно будет где-то искать другой источник тактовых импульсов. А каким образом МК выдает их, и от чего зависит частота я подсказать не могу.
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Вымогатель припоя
Аватара пользователя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

В даташите на МК написано:
Master clock may be output to drive an external audio component. Ratio is fixed at
256 × FS (where FS is the audio sampling frequency)
Т.е. на выводе I2S_MCLK присутствует частота сэмплирования умноженная на 256. Если посчитать, то всё сходится с таблицей приведенной в даташите на PCM1742.

...
44100 Гц * 256 = 11289600 Гц = 11.2896 МГц
48000 Гц * 256 = 12288000 Гц = 12.288 Мгц
...

и т.д.

По I2S теперь понятно. Меня MicroXplorer с панталыку сбил. В даташите написано:
Up to 3 SPIs (30 Mbit/s), 2 with muxed I2S to achieve audio class accuracy via audio PLL or external PLL
Т.е. 2 из 3-х SPI могут работать как I2S как я понимаю. А MicroXplorer рисует всё на отдельных пинах. Как будто у контроллера 3 SPI и 2 I2S.

Буду дальше ещё читать.
Нельзя всё знать, достаточно понимать.
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

1. Можно ли параллелить ЦАПы ? Т.е. один выход I2S подключать на 3 ЦАПа ?
2. Как лучше организовать звуковой тракт: по схеме на рисунке 1 или на рисунке 2?

Рис. 1 - можно применить качественный ОУ. Более дешевый усилитель (покупной) без фильтров.
Рис. 2 - проще схема, не нужно городить 2-х полярное питание для ОУ, более дорогой усилитель с фильтрами

TPA5050 - процессор задержки звука с программируемым временем
PCM1794 - ЦАП
Аудио тракт.jpg
(184.51 КБ) 1226 скачиваний
Всё это сугубо в личных учебных целях. Для автомобиля. Укажите на слабые места.

Примерный усилитель для рис. 2 (5-ти канальный с фильтрами) Kicx QS 5.300 Цена ~8000 руб.
kicx_qs_5300.jpg
(20.2 КБ) 968 скачиваний
Нельзя всё знать, достаточно понимать.
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

mr_smit писал(а):Можно ли параллелить ЦАПы ? Т.е. один выход I2S подключать на 3 ЦАПа ?
Нельзя всё знать, достаточно понимать.
Мучитель микросхем
Аватара пользователя
Сообщения: 454
Зарегистрирован: Вс янв 15, 2012 19:58:40

Сообщение radiokot__ »

Да можно.
А четвёртый провод обычно нужен для переключения каналов (правый, левый) в стерео режиме.
Ни один домашний кот незнает что он домашний.
Ответить

Вернуться в «Периферия»