Pull to refresh
61
0.7
Александр Козлов @alcotel

Инженер-электронщик

Send message

Уже давно прошли те эпохи, когда решала армия и поле боя. А идиоты всë не кончаются.

На Плюке-то как раз они ничем не отличались. "Ты чë, дальтоник, чтоле?" - вот и все объяснения были.

У вас всë-таки больше похоже на то, что у себя в профиле товарищ @Weshaнаписал:

Все программисты в мире делятся на две категории:

  • Те, кто считает, что ChatGPT кодит на порядок лучше их;

  • Те, кто считает, что ChatGPT кодит на порядок хуже их.

И те, и другие абсолютно правы.

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

Коротко и со вкусом! По-моему пока лучшее, что я из "Будущего здесь" прочитал.

карманный прибор

"Визатор" он, по-моему, назывался)

Мне один старый товарищ, когда узнал, что я железо проектирую, по приколу предложил такой сделать. Когда стали под водочку-закусочку обсуждать, как конкретно он должен работать, что доступно, на что он физически должен реагировать - вообще не смешно стало.

гуляем примерно по одному маршруту

И обычно приблизительно в одно и то же время. Один раз утром, один раз - вечером. С чего бы распределению не быть бимодальным?

А если учесть факт, что между утренней и вечерней прогулкой времени обычно меньше, чем между вечерней и утренней (у нас по крайней мере так) - можно и асимметрию распределения объяснить.

Если я когда-нибудь заблужусь в лесу со своим пёселем, то вместо мха на дереве смогу узнать примерное направление по-другому

С пёселем не заблудитесь, если будете его слушаться, проверено) А вот направление на Солнце и без пёселя можно определить.

А почему именно 15ю предметами, а не 42 ?

За последние 10 тысяч лет человеки потеряли примерно 150 грамм мозга, уменьшив на такую величину его средний вес. Если вспомнить, что эти же 150 грамм предки набирали в течение нескольких сотен тысяч лет

Да что вы привязались к объёму мозга, никак понять не могу (объёма, похоже, не хватает) ?

У мамонта был объём мозга на порядок больше, чем у человекообразных. И где теперь этот мамонт? В музее под стеклом, да, ещё сохранился местами.

У коровы мозг тоже не маленький. И что?

Давайте ещё построим теорию о критической массе мозга) Обладатели больших мозгов сразу познали дзен, прокрутили в уме всю эволюцию от овладевания огнём до просмотра мемов с котиками, и решили не е***ть себе этим мозг. У кого поменьше - не догадались даже начать. И только гоминиды познают все прелести обладания критической массой мозга - ещё не въехали, куда оно ведёт, но куда-то уверенно топают.

Не, ну в честные 24 бита и 144 dB в аудио-диапазоне я не верующий. Разве что диапазон зажать сверху и снизу по самое си-бемоль, и ещё сигнал разогнать до +-10 V. Только аудио-кодеки как-то не хотят такое переваривать. 0..+5 V - предел, похоже

Если есть прецедент с SNR 130 dB - подскажите пожалуйста. Сам ищу, хочется от шумодава избавиться. Для меня "бюджетный" - это по цене порядка Behringer U-phoria.

Встречался на днях с очень интересной штукой - диктофон ZOOM H1. То ли там использовали какой-то АЦП с SNR больше 120 дБ, то ли обычный 4-канальный АЦП, куда дополнительно усиленный звук подаётся. Что, наверное, дешевле, но микрофоны-то по любому с большой динамикой.

На записи репетиции он нормально и чисто снял звук в 1,5 м от ударной установки, и наша тихая болтовня в перерывах тоже чисто записалась. Никаких компрессоров, больше 100 дБ динамики без задержек.

Стоит тоже немало, да, но не так, как топовые TASCAM. Если интересно, попробую выпросить девайс на реверс-инжиниринг.

выпускаются специальные микросхемы компрессоры. Они заточены для работы с микрофоном. Юзаешь ее и нет никаких проблем с ДД

Напомню:

Чтобы сохранить динамический диапазон, вы предложили решение - заменить АЦП большой разрядности на аналоговый компрессор + АЦП встроенный, бесплатный. Супер!

Поэтому я и сравниваю параметры, мешая их в одну кучу.

Я сравнил это решение с тем, что выбрали @the_bat и @a3xв своей разработке. По параметру "цена" получилось не в пользу вашего решения. Для сравнения по качеству я привёл параметр "SNR". Про ENOB забудьте, это просто пересчёт из битов из SNR.

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

Приведите примеры более важных параметров, по которым можно оценить качество звука компрессора и АЦП.

Я про честное разрешение, ENOB которое называется.

Железячникам достаточно джека 3,5мм и микроSD. Гребёнка 0,1" - вообще та самая линейка. А рыбаки - ещё те измерители, специально пачку тонких коротких сигарет берут)

Нет, это, наверное, потому что G.711 придуман в 1972 году, когда один канал аналогового компрессора стоил в 10 раз дешевле любой цифровой микросхемы.

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

А почему вы ранжируете микросхемы по SNR? А не по количеству ножек, например?

Это такой тонкий троллинг?

Хотел привести какой-то важный для аудио-тракта параметр, чтобы весь даташит не копировать. $7,5 за канал - это дорого, но хотя-бы понятно, за что: 112 dB динамики на дороге не валяются, это эквивалентно 19-битному разрешению.

Если сначала аналоговый сигнал подвергнуть компрессии, а потом оцифровать линейным АЦП, получим тот же самый результат

Возможно. Только в кодеках почему-то делают наоборот - сначала сигма-дельта-оцифровка, а потом кодирование в A-law/u-law. Наверное, потому, что один канал аналогового компрессора стоит в 2-10 раз дороже 2-канального кодека с кучей других плюшек.

SSM2166 - SNR 112 dB за $7,5
SSM2167 - SNR 67 dB за $1,5
NAU88C22 - SNR 90 dB за $0,7

64 кБит - стандартный тайм-слот потока Е1

Да, но вот только код там не линейный. А один из простейших форматов с плавающей точкой.

И, по вашему, 11 "эффективных" бит недостаточно для речи?

Для воспроизведения после нормализации и компрессора - даже 8 честных бит достаточно. Для записи - маловато. Х.з, сколько звука дойдёт до микрофона. Может быть и мало. А может и какой-нибудь товарищ генерал рядом гаркнет.

8 бит - очень маленький динамический диапазон для записи. Даже в олдовой телефонной сети - 13 бит. А встроенный АЦП достаточно шумный, даже если вычистить ему питание, даташит говорит про 10-11 эффективных бит.

Гораздо проще поставить кодек, они не дорогие. А уже потом в цифре сделать компрессор, если надо. Эра аналоговых компрессоров кончилась вместе с аналоговой записью.

Про кэш данных процессора. Может, для STM это не сильно актуально, там, вроде, только флеш-память кэшируется. Но в каких-то случаях даже упрощённый ARM Cortex-M4 может отложить запись в RAM.

Не так уж много нужно для сжатия, говорят. Используемый в Bluetooth кодек, вроде, считается попроще и экономит батарейку как раз. Ну и существует G.711 - он вообще простейший. Правда от 16 бит остаётся 13-14, но сжатие - в 2 раза.

NAU - сейчас хороший выбор. Сам недавно ставил. А микросхемы самых знаменитых кодеко-строителей AK сейчас тоже недоступны? Cirrus? Китай?

Верна ли гипотеза, что запись по SPI блокирует работу DMA? По идее, не должна, но кто его знает…

Это вряд ли. DMA-каналы работают в общем независимо, и скорость SPI для DMA достаточно детская. Заголовок WAV ведь нормально пишется, без смещений и пропусков.

Нужно только не забывать сливать кэш, когда DMA используете. Если вызов у вас блокирующий, проц в это время ничего не делает, тупо ждёт бита окончания, и данные могут застрять в кэше.

Как лучше писать аудиопоток на внешнюю память?

Наверное, быстрее будет один раз сформировать скелет для файла - всю инфу о связи блоков, которую требует FAT. На все 20 часов, например. А потом писать сами данные, не заморачиваясь ни на что. Иначе вам приходится всё время переписывать заголовок, в котором объём данных указан. Может, стоит выбрать другую файловую систему, более удобную для записи потоковых данных.

Ну и напрашивается решение - сжать данные. OGG, MP3, да хоть GSM. У вас вполне производительный 32-разрядный проц, который ничего не делает.

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

Может я что-то не до конца понял. Но вроде у вас при подключении в системе появляется новый СОМ-порт, а не конкретное устройство, подключённое к существующему порту. Поэтому так вполне получится.

Катюня прикольная. Прямо таки Екотерина Ин-Яновна ☯

Терминология просто перемешалась. GPU-сопроцессоры-ускорители в формате отдельной PCIe-платы, например, тоже зовут видео-картами, хотя видео-интерфейсы у них физически отсутствуют.

Может, потому, что диспетчер устройств ОС их так называет. Мы же называем одного из домашних питомцев - морская свинка)

Полная противоположность STMо-подобным. У которых вместе с АЦП в порт A пихают основную кучу полезных цифровых интерфейсов, и весь остальной аналог. В результате всё хрипит, пердит, и все правила трассировки аналоговой земли идут лесом. И вроде даже берёшь корпус побольше, а хрен тебе - порты D,E,F... пустые, только GPIO, только хардкор.

Помню, словил проблем один раз с ёмкостным датчиком у стм 051, или что-то вроде него. Один из датчиков подключил как раз к такой ноге, на которой ещё внутри чипа и АЦП висит, и ЦАП, и компаратор. Оказалась, что собственная ёмкость этой ноги - не 5 типовых пФ, а все 30 пФ. В итоге еле-еле пробил 5 мм стекла над площадкой датчика ценой неимоверной пост-обработки. Ногу, естественно, в следующей ревизии железа поменял первым делом.

Так что да, мультиплексировать всё на одну GPIO - ещё те грабли.

Information

Rating
1,916-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Embedded Software Engineer, Разработчик электроники
Lead
From 280,000 ₽
Electronics Development
Development of printed circuit board
FPGA
Programming microcontrollers
Sound processing