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

Как работать с ресивером WM8805? Индикация, конфигурация


Рекомендуемые сообщения

Приветствую, датагорцы.

 

Прикупил я WM8805, прочитал статью и... впал в ступор.

Читаем даташит (стр.19 вольный перевод): для индикации режимов при аппаратной конфигурации микросхемы можно использовать следующие выводы:

SCLK - "TRANS_ERR" как бы это адекватно перевести - ошибка транспортного уровня?

SDOUT - "NON_AUDIO" - тут с переводом просто: на входе не аудиоданные

CSB - "UNLOCK" - опять трудности перевода, что это за разомкнутый или открытый???

GPO0- "GEN_FLAG" - понятно, что генеральный флаг, но не понятно что это означает.

 

А теперь каверзные вопросы:

1. предложите ваши вменяемые варианты переводов этих английских аббревиатур.

 

2. из даташита не ясна нагрузочная способность выходов. Стоит ли вешать светодиоды прямо к выходам или нужны буфера? (потребление всей цифровой части ресивера указано 15мА)

 

3. самая засада в реализации индикации! Эти же самые "ноги" в момент включения (или аппаратного сброса) на 10-20 мкс (зависит от кварца) превращаются во входы конфигурации. Т.е. задав на такое короткое время на этих ногах нули и единицы мы конфигурим чип. После этого эти же ноги превращаются в выводы индикации. Вот так вот через одно место реализовано всё. Как эту байду организовать, чтобы одно другому не мешало?

 

У меня сейчас в голове крутится только один вариант: ставим шинный формирователь типа кр1534ап4 (хватит половинки микрухи). На входах формирователя вешаем "0" и "1" согласно нужной конфигурации. При включении транслируем уровни со входов на выходы, т.е. на указанные ноги WM8805. После 20мкс выходы АП4 переводим в "Z" (третье) состояние и они нам не мешают. Параллельно им цепляем буферы со светодиодами - здравствуй расширенная индикация.

 

Может можно как-то попроще, без дополнительных корпусов? В даташите вариантов нет, авторы оставили пользователям простор для творчества. :music:

 

Помогите, люди добрые, кто чем может! :cool:

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

В таблице 45 расшифрованы флаги:

GEN_FLAG - поднят какой-либо (может быть - все одновременно) из трёх флагов - TRANS_ERR, NON_AUDIO или UNLOCK

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

UNLOCK - флаг разблокировки схемы тактирования Rx

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

NON_AUDIO - поднят один из двух (либо - оба сразу) флагов:

PCM_N - флаг обнаружения не аудио-сигнала

или

AUDIO_N - отражает состояние бита 1 регистра состояния канала

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

Тааак, с первым вопросом, можно сказать, разобрались.

Правда, не очень понятно, что означает: UNLOCK - флаг разблокировки схемы тактирования Rx и что с этим делать?

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

В звуке я - чайник, могу ошибаться в терминах, но по даташиту - это флаг готовности/не готовности принимать S/PDIF поток

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

Что касается реализации индикации, то согласно Таблицы 8, если при подаче питания или аппаратном сбросе на пине SDIN - низкий уровень, то через 9-25 мкс микросхема устанавливается в режим аппаратной настройки и пины SCLK, SDOUT, CSB и GPO0 работают как индикаторы флагов

 

По идее, если повесить на эти пины через резистор светодиоды (ну может через транзистор при недостаточности тока) должно работать

 

Если верить даташиту, большинство фишек в режиме аппаратной настройки не доступны, так что лучше использовать МК

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

Что касается реализации индикации, то согласно Таблицы 8, если при подаче питания или аппаратном сбросе на пине SDIN - низкий уровень, то через 9-25 мкс микросхема устанавливается в режим аппаратной настройки и пины SCLK, SDOUT, CSB и GPO0 работают как индикаторы флагов

 

По идее, если повесить на эти пины через резистор светодиоды (ну может через транзистор при недостаточности тока) должно работать

 

Если верить даташиту, большинство фишек в режиме аппаратной настройки не доступны, так что лучше использовать МК

С микроконтроллером это понятно, это будет следующий этап. Пока юзаю хардварный режим.

Со светодиодами оно было бы именно так все просто...но! При включении для конфигурации чипа на этих же пинах надо выставить где нули, где единицы. Если пин тупо соединить с землёй, то когда он превратится в выход - это не есть хорошо.

В даташите "1" задают с питания через резистор 10 кОм и вроде как он на "выход" не влияет.

Будет ли чип считать как "0", если вход посажен на землю через светодиод и резистор?

Сегодня проверю.

 

" это флаг готовности/не готовности принимать S/PDIF поток " - по сути бесполезная индикация? С чего бы чипу в хардварном режиме быть не готовым принимать данные???

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

wm8805-hw-indication-1.PNG

В ХардВарном режиме управления доступны только индикаторы ошибок, а ошибки эти возникают обычно одновременно. Поэтому, кроме раздельной индикации, для удобства юзера реализован общий флаг ошибок GEN_FLAG.

На него по "ИЛИ" выводятся все доступные ошибки: TRANS_ERR, NON_AUDIO и UNLOCK.

Т.е. если на GEN_FLAG = "1" и светик зажегся, значит где-то бардак.

 

UNLOCK - показывает, что ресивер не синхронизирован со входящим S/PDIF-потоком, например, нет входящего потока или вы пытаетесь чипу скормить неподдерживаемый сэмплрейт. В хардварном режиме чип 192 не может, 96 максимум.

 

TRANS_ERR - ошибки при передаче потока, например, хреновый или оч.длиный кабель, а полученные данные повреждены или искажены.

 

NON_AUDIO - не аудио, например, пытаетесь скормить какой-нибудь DTS. Это опять объединенный по "ИЛИ" флаг для PCM_N и AUDIO_N, где соответственно:

PCM_N - обнаружена не аудио-кодировка (по IEC-61937) входного потока.

AUDIO_N - восстановленные данные не содержат audio PCM сэмплы.

Т.е. если на NON_AUDIO = "1" и светик зажегся, значит ресивер получает не аудио-данные.

 

Иными словами, в нормальном режиме работы НИ ОДИН из всех этих флагов

GEN_FLAG, TRANS_ERR, NON_AUDIO, UNLOCK

"светиться" не должен, все по нулям.

 

Никакого влияния подключенные в ХардВарном режиме чипа светодиоды на его конфигурирование естессно не оказывают.

 

Правильнее всего подключать светики через ключи по любой стандартной схеме. Хватает и просто резисторов: пин - резик - светик - земля.

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

... Если пин тупо соединить с землёй, то когда он превратится в выход - это не есть хорошо. ...

Почему "тупо соединить с землёй" - через резистор. Тогда можно использовать и как вход и как выход

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

... Пока юзаю хардварный режим. ...При включении для конфигурации чипа на этих же пинах надо выставить где нули, где единицы. ...
Нет, не надо на этих пинах ничего выставлять.
Ссылка на комментарий
Поделиться на другие сайты

Я говорю исключительно о пинах индикации хардварного режима, см. картинку в моём посте и описание.

Валерий именно о них задаёт вопрос, не так ли?

 

Естественно, что чип в этот режим нужно переключить по нулю на ноге 7 (SDIN/HWMODE).

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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...