Комментарии 7
А чем sigrok хуже для анализа цифровых сигналов? Тем более I2S декодер там есть.
Sigrok записывает только первые три секунды и зависает. А ещё в Sigrok отсутствует ADC пины для измерения аналоговых сигналов.
Тем более I2S декодер там есть.
У Saleae Logic тоже есть отличный и простецкий I2S decoder.
Вот инструкция настройки
https://habr.com/ru/articles/758188/
А с 16bit right justified работали? Там же биты L/R ровно-ровно в пределах своего WS должны быть?
Можете подсказать дилетанту - как умные колонки обрабатывают данные с 4-х MEMS микрофонов сразу. Ну не тупо же складывают массивы чисел?
Там ведь сигнал приходит не только с разной амплитудой/шумами но и с разной фазой...
с 4-х MEMS микрофонов
MEMS микрофоны даже не сам сигнал передают, а его модуляцию (PDM). Первым делом надо преобразовать PDM в PCM. Это делает цифровой фильтр CIC.
На этой фазе будут сигналы реального звука.
Далее делается ЦОС обработка. Вычисляется корреляция между сигналами со всех микрофонов.
После корреляции получаются 4 числа TOF (TimeOfFlight). Они линейно пересчитываются в AoA (AngleOfArrival).
как умные колонки обрабатывают данные с 4-х MEMS микрофонов
Можете проанализировать исходники яндекс-колонки.
Вот пожалуйста Утечка исходных кодов сервисов яндекс
Отладка интерфейса I2S