Usb ad контроллер для подключения аудио цап
Если вы любите слушать музыку в высоком качестве, то наверняка знакомы с форматами «без потерь», или lossless (FLAC, WAV и другие). Они дают существенную разницу в сравнении с MP3: широкий динамический диапазон и отсутствие потерь на ВЧ благодаря меньшей компрессии. Однако их вес ограничивает перенос музыки на карту памяти, поэтому приходится хранить медиатеку на ПК. Можно ли слушать музыку напрямую с компьютера, не тратясь при этом на аудиокарту ради качественного звука? Решение такого вопроса простое — достаточно использовать Hi-Fi плеер с функцией USB-ЦАП.
Немного о функции USB-ЦАП
Большинство компьютеров и ноутбуков имеют встроенные в материнскую плату аудиокодеки, не способные выдать качественный звук. Однако эту проблему получится обойти, подключив к ПК внешний ЦАП и поручив ему обработку звукового сигнала.
Многие плееры могут работать как внешняя аудиокарта, принимая цифровой сигнал с внешнего устройства и преобразовывая его в аналоговый. Для этого им нужен специальный контроллер на входе USB, который перекидывает поступающий сигнал на ЦАП. В устройствах FiiO эта роль возложена на чип компании XMOS, позволяющий передавать аудиопоток вплоть до 24 бит/44 кГц, что является Hi-Res качеством.
Чтобы задействовать его функционал, необходимо выбрать на плеере режим ЦАП при подключении по USB, установить на компьютер пакет драйверов и программу FiiO Control Panel. Она распознаёт подключённые устройства и даёт возможность настроить передачу цифрового сигнала в обход микшеров и настроек Windows.
В настройках драйвера USB Audio на ПК есть два пункта: USB Streaming Mode (управление задержкой звука) и ASIO Buffer Size (разрядность буфера). Лучше оставить значения по умолчанию, так как эти параметры взаимосвязаны и настраиваются с оглядкой на производительность системы.
Установка необходимого софта производится один раз и занимает несколько минут. После этого не придётся ничего настраивать, достаточно подключить плеер по USB и пользоваться им как внешней звуковой картой. Такое решение позволяет использовать с ПК качественные колонки и наушники, которые он бы не потянул со встроенным звуком.
Опыт использования плеера FiiO как внешней аудиокарты
Очевидно, что стандартный компьютерный звук далёк от идеала — в большинстве встроенных аудиокарт не предусмотрено защиты от электромагнитных наводок, ограничены питание и усиление, а обвязка максимально упрощена. Всё это неважно, если к ПК подключена пара недорогих стереоколонок, однако при использовании хороших наушников сразу становятся заметны недостаток мощности и динамики, сильный фоновый шум и простое, мутное на низах и грязноватое на верхах звучание. Получается, что такие решения не способны раскрыть все краски музыки.
Во время тестирования мы использовали флагманский плеер FiiO X7-II, который подключался к ПК в режиме USB-ЦАП. Прирост в качестве относительно встроенного в материнскую плату кодека трудно не заметить — и он тем больше, чем лучше используемые наушники.
В полноразмерных Fostex T50RP звук приобретает мощь, размах и отличный контроль. Бас уходит «вглубь», становится более динамичным и оформленным. Эмоции на средних частотах наконец передаются в полном объёме — голоса вокалистов становятся глубже и обогащаются тембрами. Благодаря отличной проработке планов и широкой стереопанораме инструменты больше не теснятся в одной точке, а чётко локализованы в пространстве. Кстати, достоверная передача голосов и объёма работают на атмосферу в фильмах и сериалах, способствуя эффекту погружения. Высокие частоты тоже демонстрируют качественный рост, вырвавшись из-за вуали шума и искажений, которыми их сдабривает встроенная звуковая карта.
Однако по-настоящему оценить разницу удалось в качественных арматурных наушниках Audio-Technica ATH-IM02. Из-за высокой чувствительности и повышенных требований к выходным характеристикам источника их невозможно слушать с большинством ПК с недорогими материнскими платами и встроенными в них кодеками — фоновый шум по уровню практически равен звуковому сигналу. При подключении FiiO X7-II как USB-ЦАП эти внутриканальные наушники реализуют весь свой потенциал, выдавая невероятно скоростное, очерченное и детальное звучание. Их способности пригодятся, если ваш жёсткий диск забит композициями в формате FLAC, однако прирост ощутим даже при просмотре YouTube и прослушивании онлайн-музыки.
Для чистоты эксперимента в тестировании также поучаствовал MacBook Pro 2015 с неплохим встроенным звуком. Разница при использовании с ним плеера уже не настолько ошеломительная, но по-прежнему бросающаяся в глаза — всё же ноутбук не позиционируется как качественное аудиоустройство. И если с запасом мощности у него дела обстоят неплохо, то проработка краёв частотного диапазона у FiiO X7-II заметно лучше. Кстати, при таком использовании плеер одновременно заряжается по USB. Это не имеет значения на стационарном компьютере, работающем от сети, однако при подключении к ноутбуку стоит внимательнее следить за состоянием аккумулятора.
Выводы
Функцию USB-ЦАП поддерживают все новые плееры FiiO, начиная с бюджетного X1-II. Каждый из них позволяет улучшить звук среднестатистического ПК, при этом качественный отрыв будет увеличиваться от модели к модели. FiiO X3-III звучит лучше, чем кодеки в дорогих материнских платах, а FiiO X5-III и X7-II вполне могут заменить даже профессиональную аудиокарту.
Hi-Fi плееры с функцией USB-ЦАП — универсальное аудиорешение, с которым можно получить хороший звук дома, на улице и в офисе от любого компьютера или ноутбука.
Universal Serial Bus (USB) является очень популярным последовательным интерфейсом передачи данных, что компьютеры могут использовать для подключения к внешним устройствам.
Левчук Александр Николаевич©
Проще говоря, эту передачу данных можно представить следующим образом:
USB аудиоданные считываются с жесткого диска и временно сохраняются в основной памяти компьютера. Оттуда каждую миллисекунду поступает на выход USB, где пакет данных, так называемый «кадр», отправляется на микросхему приемника в цифро-аналоговом преобразователе.
Furutech GT2 USB подключение
SB 2.0
USB и ЦАП
Сторона USB-приемника (то есть ЦАП) имеет буфер для входящих данных, и чтобы гарантировать, что он не будет ни полным, ни пустым, компьютер должен быть синхронизирован с USB-приемником в цифро-аналоговом преобразователе. Для этой задачи используется так называемый изохронный режим передачи (также есть режимы прерывания, группового и управления). Изохронный режим имеет три подгруппы: одна говорит о синхронной, адаптивной или асинхронной передаче данных.
Синхронный, адаптивный и асинхронный режимы в ЦАП
Furutech GT2 USB + ЦАП R2R11
USB 2.0 A-B
Однако в асинхронном режиме восстановление тактовой частоты, выполняемое контуром управления ФАПЧ, но не зависящее от главных часов компьютера в цифро-аналоговом преобразователе, определяет время, в которое синхронизация независимо от недостатков компьютера и от шины USB вызывает джиттер.
Отношения ведущий / ведомый изменяются на обратное: теперь часы в цифро-аналоговом преобразователе (внешний ЦАП) работают, и через аудиоконтроллер USB устанавливается контур обратной связи, который гарантирует, что компьютер имеет буфер на входе USB в правильном измерении, т.е. не позволять ему работать пустым или полным.
подключение USB к ЦАП
Universal Serial Bus (USB) является очень популярным последовательным интерфейсом передачи данных, что компьютеры могут использовать для подключения к внешним устройствам.
Левчук Александр Николаевич©
Проще говоря, эту передачу данных можно представить следующим образом:
USB аудиоданные считываются с жесткого диска и временно сохраняются в основной памяти компьютера. Оттуда каждую миллисекунду поступает на выход USB, где пакет данных, так называемый «кадр», отправляется на микросхему приемника в цифро-аналоговом преобразователе.
Furutech GT2 USB подключение
SB 2.0
USB и ЦАП
Сторона USB-приемника (то есть ЦАП) имеет буфер для входящих данных, и чтобы гарантировать, что он не будет ни полным, ни пустым, компьютер должен быть синхронизирован с USB-приемником в цифро-аналоговом преобразователе. Для этой задачи используется так называемый изохронный режим передачи (также есть режимы прерывания, группового и управления). Изохронный режим имеет три подгруппы: одна говорит о синхронной, адаптивной или асинхронной передаче данных.
Синхронный, адаптивный и асинхронный режимы в ЦАП
Furutech GT2 USB + ЦАП R2R11
USB 2.0 A-B
Однако в асинхронном режиме восстановление тактовой частоты, выполняемое контуром управления ФАПЧ, но не зависящее от главных часов компьютера в цифро-аналоговом преобразователе, определяет время, в которое синхронизация независимо от недостатков компьютера и от шины USB вызывает джиттер.
Отношения ведущий / ведомый изменяются на обратное: теперь часы в цифро-аналоговом преобразователе (внешний ЦАП) работают, и через аудиоконтроллер USB устанавливается контур обратной связи, который гарантирует, что компьютер имеет буфер на входе USB в правильном измерении, т.е. не позволять ему работать пустым или полным.
подключение USB к ЦАП
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.
Последние посетители 0 пользователей онлайн
Не надо извиняться. Есть автоматические переводчики. Воспользуйтесь любым. Вы на русскоязычном сайте.Похожий контент
Здравствуйте коллеги, друзья и единомышленики.
Вообще моя специфика это электротехника и электрооборудование. Поскольку нередко приходится проектировать и изготовлять различные щиты, управления различного электрооборудования, то есть необходимость в различных контроллерах, которые бы измеряя параметры сети предпринимали те или иные функциональные процедуры. Да сегодня существую различные ПЛК, и прочие устройства под дин рейку на которых можно реализовать все, что угодно. Но к сожалению, либо, они дороги, либо недоступнн. Кроме того вообще ПЛК умеющих "из коробки" измерять сетевое напряжение по всем фазам (не говоря про ток) в природе пока не встречал. Поэтому к ПЛК, приходится покупать т.н. датчики или измерители сетевых параметров, стоимость которых сопоставима с ПЛК, к тому же растет габарит щита где все это будет стоять. Так или иначе я решил научится делать хотябы простейшие контроллеры, с обычной прошивкой, которые бы могли реализовать все мои предпочтения.
Выбрав МК STM32, подобрав схемотехнику внешних интерфейсов и исполнительных устройств.
Пока, я остановился перед выбором каким образом измерять, сетевое напряжение переменного тока. На первый взгляд почти, все производители реле напряжений используют вот такую схему:
Но мнению специалистов, эта схема плоха наличия невысокого внутреннего сопротивления самого АЦП микроконтроллера.
Поэтому рекомендуют добавить ОУ в режиме буфера:
В обоих схемах, измеряемый сигнал смещают на половину питающего/опорного напряжения, в результате теряется один бит точности АЦП.
Поиск в интернете, навел на следующие материалы:
1. Диапазон преобразования АЦП микроконтроллера можно расширить вдвое без потери точности. В схеме используются два однопериодных выпрямителя на ОУ, соответственно необходимо два входа АЦП. Соответственно хочется схема по лучше.
2. Двухполупериодный активный выпрямитель без диодов. Все прекрасно и просто, но рекомендуется использовать дорогой и труднодоступный ОУ. Простые и дешевые ОУ типа МСP6002/4, при моделировании этой, схемы (в Multisim) ее работоспособность не подтвердили. Я был не один, кто хотел ее реализовать, у котов на форуме есть обсуждение этой схемы, но там тоже судя по всему тоже успехов не достигли. Поэтому я продолжил поиск и попал на третий вариант, это.
3. Учебный материал - Прецизионные выпрямители. Предложенная схема в идеальных условиях (когда на вход подключен генератор сигналов) показала работоспособность в среде Multisim. Однако когда я дочертил высоковольтный делитель, и подал высокое напряжение, то на выходе получил также модуль синусоиды, но его амплитуда была снижена на 35-40%, от того кот. был на выходе резист делителя. В итоге в эту схему я добавил буферный каскад ОУю В итоге, схема обрела следующий вид:
В этот раз моделирование уже подтвердило ожидаемые результаты:
- на выходе имеем, модуль синусоиды, причем с той же амплитудой, которая имеется на входном резистивном делителе.
- если подать напряжение превышающее номинал резист делителя, то на входе МК оно будет срезанным на уровне 3вольт.
- теперь можно использовать все 12бит АЦП, для оцифровки
Но получилась схема какая-то громоздкая на один канал напряжения.
Можно ли ее упростить, и есть ли более простые схемы решающие данную проблему??
Помогите понять где ошибка. не получается реализовать попеременный опрос 2ух каналов АЦП. Данные с одного канала должны передаваться на первый индикатор как напряжение, а со второго, соответственно на второй индикатор как сила тока.
((1<<CS00) | (1<<CS02)); //настройка частоты таймера f/8
TIMSK |= (1<<TOIE0); //разрешение прерываний по переполнению таймера
TCNT0=0; // обнуление счетчика
ADCSRA |= ((1<<ADEN) | (1<<ADSC) | (1<<ADPS2)); // запуск АЦП, запуск преобразования, предделитель 16
ADCSRA &=
((1<<ADFR) | (1<<ADIF) | (1<<ADPS1) | (1<<ADPS0)); // режим преобразвания прерывестый, флаг перобразования опущен, предделитель 16
ADMUX |= ((1<<REFS0) | (1<<REFS1)); //источник опорного напряжения 2.56В
ADMUX &=
((1<<ADLAR) | (1<<MUX0) | (1<<MUX1) | (1<< MUX2) | (1<<MUX3)); // направление записи, измерительная ножка ADC0;
sei(); // вкл прерывания
while (1)
if (ADCSRA & (1<<ADIF))
U_Convert((U*5.00/1024)*100);
I_convert((I*5.00/1024)*100);
>
>
>
void U_Convert (unsigned int U_num) //деление на разряды напряжения
UR1=U_num/100;
UR2=U_num%100/10;
UR3=U_num%10;
>
void I_convert (unsigned int I_num) //деление на разряды тока
< IR1=I_num/100;
IR2=I_num%100/10;
IR3=I_num%10;
>
ISR (TIMER0_OVF_vect)
<
if (GainControl == 1) //отображение 1ого разряда напряжения
if (GainControl == 2) //отображение 2ого разряда напряжения
if (GainControl == 3) //отображение 3ого разряда напряжения
if (GainControl == 4) //отображение 1ого разряды силы тока
if (GainControl == 5) //отображение 2ого разряды силы тока
if (GainControl == 6) //отображение 3ого разряды силы тока
GainControl++;
if (GainControl > 6) GainControl=0; // мониторинг переменной для управления затворами
>
ISR (ADC_vect)
if (current_ch == 0)
U = ADC;
voltage = (U*2.56/1024)*100;
ADMUX |= (1<<MUX0);
current_ch = 1;
ADCSRA |= (1<<ADSC);
>
else
I = ADC;
current = (I*2.56/1024)*100;
ADMUX &=
Помогите, пожалуйста, со схемой подключения ПЗС-линейки к микроконтроллеру. Задача заключается в том, чтобы определить координату падения светового пятна, сформированного линзой, в пределах линейки.
Модель линейки TCD132D на 1024 пикселя.
Согласно даташиту необходимо три управляющих частоты - M, CCD, SH, питающее напряжение 12 В и опорное 5 В. Все эти условия были выполнены. Данные считываются.
Выход данных с линейки пока просто выведен на осциллограф (красный канал).
Я плохо понимаю физические основы работы ПЗС-линейки, но ее работа кажется мне очень странной и нелогичной.
1) При равномерной фоновой засветке при считывании получается равномерное низкое напряжение на всех пикселях. (Рисунок 1).
2) При закрытии части линейки чем-либо напряжение на закрытых пикселях возрастает (Рисунок 2).
3) При включении фонарика или лазерной указки все пиксели зашкаливают, определить максимум не удается (Рисунок 3).
Если поместить линейку в темное место и светить очень тусклым лазером, то общий уровень напряжения на пикселях высокий, а в месте попадания света наблюдается едва заметный минимум. Возможно так и должно быть и нужно просто инвертировать и усилить сигнал?
В чем может заключаться проблема? Как грамотно снимать выходной сигнал с линейки и заводить его на АЦП МК?
Даташит приложен снизу.
Доброго времени!
Суть дальнейшего моего повествования связана с наводками на прототипе фотометрического оборудования. Вот фото данного прототипа:
Если опусти работу таких узлов как управление насосами накачки жидкости, насос откачки жидкости, управление воздушным компрессором, то суть устройства сводится к аналоговой части: ацп микроконтроллера и схемы усилителя фотодиода. Вот блок-схема и принципиальная схема усилителя фотодиода:
Далее 6 ножка ОУ подаётся на вход ацп микроконтроллера.
Печатные платы сделаны таким образом, что схема ОУ и фотодиод расположены на одной плате, а микроконтроллера на другой – основной плате. Плата фотодиода разведена таким образом, что вход ОУ имеет земляную петлю, нижняя сторона является общей землёй:
В целом, эта плата работает нормально. Я ее проверял питая от аккумулятора и сигнал на выходе хороший и чистый.
Проблема сама вот в чём. Что когда всё собрано во едино, а точнее, прототип запитан от внешнего сетевого адаптера от ноутбука, то сигнал превращается в бороду:
Судя даже по этому показометру, размах равен около 35-40 мв при частоте в 50 Гц. И когда я просто подношу ладонь к плате фотодиода на расстояние в 20-50 мм, то размах увеличивается уже за 100 мв.
Тут нужно пояснить вот какой факт. Сейчас я питаю схему ОУ и фотодиода от отдельного аккумулятора (его видно на фото ниже), Так я думал, что питая от общего источника аналоговую часть и цифровую, даёт такой результат.
Но как показала практика, что питать от аккумулятора, что от общего источника, результат одинаковый.
Как выяснилось, даже если отключить питание от цифровой части (тумблер по положительному полюсу питания), а аналоговая питается от аккумулятора, то на показометре картина остаётся той же, видна та же борода.
Но если выдернуть провод питания от этой конструкции, то результат на показометре следующий:
Размах снизился до менее 10 мв и частота увеличилась примерно до 400 Гц. Вероятно тут уже собственные шумы показометра + незначительные наводки на схеме ОУ. Пока писал этот текст включил приборчик, чтобы посмотреть на его показания с отключённым щупом, вот результат:
Читайте также: