В этом тексте я написал про очень полезную способность логического анализатора Saleae и его клиентской утилиты Logic 2. Это синтаксический разбор осциллограммы трафика I2S.
Что надо из железа?
№ |
Оборудование |
Назначение |
1 |
Логический анализатор Saleae Pro 16 |
логический анализатор |
2 |
Кабель USB 3.0 micro |
Для подключения логического анализатора к PC |
Что надо из софтвера?
№ |
Программа |
Назначение |
1 |
Программа Logic 2 |
PC клиент для логического анализатора |
Итак, вы подключили свое аудиоустройство к логическому анализатору и увидели бинарную осциллограмму. Как определить какие там семплы в десятичной системе счисления?
Прежде всего надо нажать на вкладку 1F
Далее нажать на + в верхнем правом углу. Надо прописать вот такие настройки I2S/PCM Заполните опции как показано на скриншоте.
Нажимаем save и получаем вот такую разобранную картинку.
Как видно данные в прошивке совпали с тем, что в реальности выставилось на проводах интерфейса I2S
Вывод
Логический анализатор Saleae отличный отладочный инструмент для разбора стандартных цифровых интерфейсов, в частности I2S. Такая простенькая опция позволяет сэкономить уйму времени.
Словарь
# |
Акроним |
Расшифровка |
1 |
I2S |
Inter-IC Sound |
2 |
PCM |
Pulse-code modulation |
5 |
PC |
personal computer |
3 |
BCLK |
Bit clock |
4 |
LRCLK |
Left Right Clock |
Links
https://habr.com/ru/articles/438732/
https://habr.com/ru/articles/397381/
https://habr.com/ru/articles/698572/
Комментарии (23)
BARSRAB
01.09.2023 07:00+2Серьезно? Целая статья о том, как вписать значения в готовую форму? А почему бы тогда не начать с того, как запустить ПО? Ну или подключить анализатор к ПК? Я ожидал, что тут будет статья про то, как самому написать декодер для Logic, а тут какой-то детский сад...
aabzel Автор
01.09.2023 07:00Да, так и есть. Потому что благодаря логическому анализатор Saleae и утилите Logic 2 ребёнок из детского сада может делать, то же самое что без Saleae Logic могли лишь делать деды из НИИ.
BARSRAB
01.09.2023 07:00+2Такое себе оправдание появления статьи. Пока что это очень сильно смахивает на обычную рекламу, особенно вместе утверждениями про то, что неоригинальный анализатор так работать не умеет. Что помешало просто добавить информацию из этой статьи в статью про I2S? Плюс при чем тут какие-то там деды из НИИ, когда это может сделать любой человек владелец осциллографа? Тем более что разбирать весь поток данных никому не нужно.
Andy_Big
01.09.2023 07:00+1Китайский анализатор, который Вы не пробовали, но не смотря на это не любите, сделает это без лишних движений, достаточно просто указать ему, что данные нужно интерпретировать как I2S.
NutsUnderline
01.09.2023 07:00Еще бы в двух словах описать как работает I2S. Не по нравились подписи к картинке перед Выводом: там число 254.8 магическим образом превратилось в ДВА числа 254 (вероятно Sapmple R и Sample L, но почему то 8 битных, хотя вроде бы были 16).
Ответы дает статья по третей ссылке, можно конечно перейти на нее, долго и упорно читать, но эта статья слишком уж лаконична.BARSRAB
01.09.2023 07:00+1Ну 8-битными они точно быть не могут, там же значения больше 255 дальше идут. Ну а превращение 245,8 в 254 - это округление. Ну и да, на картинке автору надо было выделять Sapmple R и Sample L, а не Real/Int...
Reason89
01.09.2023 07:00+1В статью можно было добавить, что во второй версии ПО добавили поддержку расширений для расшифровки или преобразования полученных данных. Тот же I2S поддерживается.
Можно использовать как готовые, так и написать собственное имея какие то базовые познания в Python.
LAutour
Китайские аналоги считаются?
eri
подскажите какой-нибудь не дорогой. в основном для разбора манчестера в брелках от ворот нужен
BARSRAB
Китайский аналог Saleae. Стоит копейки, работает с оригинальным софтом Logic.Манчестера, кстати, умеет разбирать
eri
Их много разных...
BARSRAB
Да вроде как все одинаковые. Ну не считая 16-канальных.
aabzel Автор
Скорее Нет. Они совсем ущербные. Записывают только первые 2 секунды и в них нет adc.
BARSRAB
АЦП там даром не нужен, а про запись вообще чушь какая-то. Сам анализатор ничего не записывает, пишет софт на ПК. Анализатор лишь за триггеры и передачу данных на ПК отвечает. Вот запись 10с на китайский анализатор:
aabzel Автор
ADC-то как раз и нужен для разбора аудио кодеков (например MAX9860).
BARSRAB
Сигнал цифровой, зачем там АЦП? Точнее какой смысл смотреть одновременно на цифру и аналог? Тем более что характеристики АЦП там совершенно посредственные.
aabzel Автор
У Вас записывается долго лишь по тому что изменений в сигнале нет.
Вы попробуйте реальный трафик I2S записать и увидите, что через 2 сек китайский аналог ляжет.
LAutour
Бред. Лично отлаживал разный вывод на китайском аналоге. Ничего не падало.
BARSRAB
Изменения сигнала никак не влияют на количество данных. Семплрейт остается постоянным. Бывает, отваливает только если на ноуте нагрузка на порты высокая. Например, подключен программатор с отладчиком и анализатор. Тогда может ругнуться на скорость соединения. I2S у меня под рукой нет, самое нагруженное, что с ходу нашел - JTAG:
Ну а не нравится клоны Сейли, так есть вполне неплохие китаезные фирмы, тот же DS Logic, как на моем скрине выше. Там уже под капотом ПЛИС, а не МК, как в 8-канальном клоне Сейли и 16 каналов.
Zuy
Да, DS Logic на удивление тоже неплох
LAutour
У него преимущество: буферная память (бер распаянной памяти Китайцы вроде больше не продают) позволяет на на высокой частоте дискретизации (с ограничением по времени) не зависеть от нагруженности USB.
Reason89
Так там же в программе все это дело настраивается. И частота дискретизации и объем записываемой информации. И ничего не ложится.