parovoZZ

Микрофон с Vcc/2 на выходе - есть ли в природе?

14 сообщений в этой теме

parovoZZ    1

Ну, собственно, сабж. Питание - от 2.4 и до 3.6. На сигнальном выводе необходима половина напряжения питания (по постоянке, разумеется).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
motoandrey14    707

Достаточно убрать конденсатор на выходе усилителя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    643

Для чего нужен такой микрофон? Обычно, питание присутствует не на ВЫХОДЕ микрофона, а на входе звукозаписывающего девайса. В чем собственно проблема? Все электретные и большая чась конденсаторных микрофонов именно такие. Какой ни возьми, у них у всех паразитное питание. С млюбой мобилки возьми - там именно такой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
parovoZZ    1
11 час назад, motoandrey14 сказал:

Достаточно убрать конденсатор на выходе усилителя.

На выходе какого усилителя???

2 часа назад, Alexeyslav сказал:

Для чего нужен такой микрофон?

Не подлежит обсуждению.

2 часа назад, Alexeyslav сказал:

Обычно, питание присутствует не на ВЫХОДЕ микрофона,

А мне нужен не обычный. Например, MP23AB02BTR - на выходе 478 мВ. Но это мало, даташитом не оговорено и не ясна стабильность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
motoandrey14    707
4 часа назад, parovoZZ сказал:

На выходе какого усилителя???

Микрофон, это лишь мембрана. Она подключена к усилителю. Усилитель ты запитываешь напряжением 3.6. На выходе уже будет 1.8В, если не использовать конденсатор по выходу.

Ну или просто задай напряжение Vcc/2. В чём проблема?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    643

Тут всё сложнее, он хочет не мембранный микрофон а модный нынче MEMS-микрофон.

Но я всёравно АБСОЛЮТНО не понимаю, зачем микрофону половина напряжения питания на выходе? Подаёшь питание на него, с выхода снимаешь сигнал и подаёшь на усилитель. В чем сложности? Зачем на выходе половина питания? В даташите даже схема подключения к усилителю есть. Проблема сделать Vref равное половине питания? Так это не проблема - два одинаковых резистора... но это бред, Vref надо брать с усилителя, обычно называется AGND с двуполярным питанием.  А всякие там смещения - это актуально только при однополярном и оно должно быть одинаковым по всему усилителю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
parovoZZ    1
1 час назад, motoandrey14 сказал:

Микрофон, это лишь мембрана. Она подключена к усилителю. Усилитель ты запитываешь напряжением 3.6. На выходе уже будет 1.8В

Так вот и скажи мне, что это за микрофон такой? Обычные электретные таким свойством не обладают. Мне не впадлу перебрать 150 даташитов, но вдруг кому известно что?

 

36 минут назад, Alexeyslav сказал:

Тут всё сложнее, он хочет не мембранный микрофон а модный нынче MEMS-микрофон.

Мне без разницы. Большинство мемсов - цифровые. Мне нужен аналоговый. Мои три экземпляра стабильны по величине напряжения, но кто знает, что будет в следующей партии? К тому же компенсировать такое кривое напряжение (478 мВ) я так с ходу и не знаю чем. А вот для половинки питания решения есть.

38 минут назад, Alexeyslav сказал:

Но я всёравно АБСОЛЮТНО не понимаю, зачем микрофону половина напряжения питания на выходе?

По большому счету без разницы. Лишь бы оно было стабильно как от температуры, так и от гуляющего напряжения питания. 

 

39 минут назад, Alexeyslav сказал:

Так это не проблема - два одинаковых резистора

Здесь и проблема - два одинаковых резистора будут жрать слишком много тока. Мне же надо столько тока, сколько просит входная цепь. Разумеется, здесь только интегральный делитель. Ни про какие резисторы даже слышать не хочу.

41 минуту назад, Alexeyslav сказал:

А всякие там смещения - это актуально только при однополярном и оно должно быть одинаковым по всему усилителю.

Ну так ап)) том и речь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    643

ЧТо у вас там за монстр-схема такая что жутко зависит от смещения напряжения на микрофоне? Вообще никто в здравом уме такие микрофоны по постоянке не подключает. Отсеки это смещение конденсатором и делов.

То что микрофон жрёт ток это норм, а паршивый делитель на среднюю точку - так это всё, конец света? Что-то вы темните. Собственно, мне это напоминает до боли тему X-Y-Z.  Вы бы уточнили ЧТО ИМЕННО вам надо и ЗАЧЕМ оно вам надо, может оно и вовсе вам не нужно и вы пытаетесь решить несуществующую проблему?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
parovoZZ    1

Мне надо на дифф каскады АЦП подать сигнал с целью последующей обработки в биполярном режиме.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    643

В чем проблема биполярного режима? Даже с таким смещением. Введите программную нулевую точку, которая будет отслеживать автоматически напряжение покоя с временем перехода секунды 2-3. Вычислить среднее значение на протяжении некоторого окна, пропустить через программный интегратор, это сложно? Да и вообще непонятно, у вас постоянно будет работать АЦП, а сделать делитель для искуственной нулевой точки так это страшный потребитель тока? Даже если аткие микрофоны и существуют, как по вашему они сделают среднюю точку? Ну да, резистивным делителем... или вон операционник AD620 возьмите, у него регулируемый offset имеется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
parovoZZ    1
9 часов назад, Alexeyslav сказал:

В чем проблема биполярного режима?

 

9 часов назад, Alexeyslav сказал:

Введите программную нулевую точку,

В том-то вся и прелесть биполярного режима, что никаких программных нулевых точек не надо - АЦП её сам сформирует, если по входу постоянку скомпенсировать. Разве что смещение внутреннего ОУ скомпенсировать. Но мне оно особо не нужно.

9 часов назад, Alexeyslav сказал:

Вычислить среднее значение на протяжении некоторого окна, пропустить через программный интегратор, это сложно?

Это не сложно - это долго. Я сейчас вышел на частоту дискретизации порядка 30 кГц при 8 МГц тактовой. Ниже этой величины падать не хочу. А хочу подтянуться ещё выше.

9 часов назад, Alexeyslav сказал:

Даже если аткие микрофоны и существуют,

Но ведь датчики Холла существуют.

9 часов назад, Alexeyslav сказал:

или вон операционник AD620 возьмите, у него регулируемый offset имеется.

Не подходит по диапазону напряжения. Я лучше малошумящий OPA поставлю, если таких немае.

Изменено пользователем parovoZZ

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    643
11 час назад, parovoZZ сказал:

Но ведь датчики Холла существуют.

Чего б им не существовать? Потребление карл, потребление! Эти ваши датчики холла потребляют просто конский ток, который вам не нравится.

Не формируют АЦП никаких автоматических нулевых точек это просто матиметика сама собой получается, если входное напряжение равно ровно половине опорного, причем оффсет всегда будет существовать и который надо будет компенсировать. Так не всеравно ли какой офсет компенсировать? Если математика сложна для контроллера, сигнал можно сформировать аппаратно, обычной RC-цепочкой и подать на второй канал АЦП и использовать дифрежим работы АЦП, если это возможно.

п.с. 8Мгц это просто прорва свободных вычислительных ресурсов! Нельзя сделать работу между преобразованиями? так растяни на 10 преобразований, по времени оно не горит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
parovoZZ    1
12 часа назад, Alexeyslav сказал:

Чего б им не существовать? Потребление карл, потребление! Эти ваши датчики холла потребляют просто конский ток, который вам не нравится.

Я вообще не к этому вел, а к тому, что по выходу ровно половина питания!

Впрочем, просмотрел несколько даташитов InvenSense (не в пример пустым даташитам от STM) - offset указан. Но совсем не Vcc/2 (( А у какого-то микрофона на дифф выходе уже присутствует смещение в 10 мВ. Вот кому он такой нужен?

12 часа назад, Alexeyslav сказал:

Не формируют АЦП никаких автоматических нулевых точек это просто матиметика сама собой получается,

Наверное, не так выразился. В свете того, что опопрное напряжение АЦП у меня меняется, то в униполярном режиме поиск виртуального нуля отнимает лишние такты. В биполярном режиме этот ноль вычислять не надо.

12 часа назад, Alexeyslav сказал:

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

Не понял, про какой сигнал речь? Самый маст хэв для моего случая - двухполупериодный выпрямитель. И я даже опробовал его. Но! Даже на диодах Шоттки он перестаёт работать на малых амплитудах. Хоть экспоненциальный усилитель ставь для компенсации)). Ну и обратная сторона - шумов нет вообще. Пороговый детектор можно выставлять хоть с самого младшего бита.

12 часа назад, Alexeyslav сказал:

Нельзя сделать работу между преобразованиями?

У меня и между, и в процессе преобразования. Младший бит у меня уходит (а то и два), поэтому шумы от МК не сильно парят. АЦП тактируется 1 МГц. Ежели проц останавливать, то частота дискретизации падает до 24 кГц.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    643

Причем тут выпрямитель? Ставьте два резистора для нулевого смещения и делов-то. Кто сказал что они должны быть низкоомными?

Но даже в таком случае ноль вам надо будет компенсировать, он не точно будет нулём по многим причинам.

Поделиться сообщением


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

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Похожие публикации

    • Автор: parovoZZ
      AREF  - внутренний ИОН 1.1в
      Вот такой код снятия результатов:
      temp = ADC; if (ADCH & (1<<ADCH1)) // Если значение отрицательное { temp |= 0xFC00; temp = (~temp) + 1; } Value_current_lsb = (uint8_t)(temp >> 2); Никак не пойму - на выбранные дифф. входы надо подать 85 мВ, чтобы АЦП выдал 0. Но это могу списать на внутренний ОУ в виде УГ. Если подаю  -1,1 в - то получаю 127.  Здесь все верно. Но при подаче положительного смещения те же 127 получаю уже при 0,72в. Что за ерунда? Неужели ОУ на столько УГ? Либо же где-то теряется разряд?
    • Автор: parovoZZ
      Не секрет, что адресация глобальных переменных прямая, а переменных в стеке - косвенная. Стек в AVR программный, то бишь откусывается от ОЗУ. Так вот вопрос - при передаче в функцию (и обратно) больших объемов данных (которые невозможно передать через РОН) все же что будет производительнее - через глобальные переменные или через параметры? Понятно, что в функцию вида
      uint8_t My_super_function (uint8_t data); переменные уйдут через РОН,  а вот в такую
      void My_super_function (uint8_t *data, uint8_t *ret); через стек? Так может ну его нафик, стек этот?
    • Автор: parovoZZ
      Я сейчас про случай, когда тактовая частота SPI равна половине или даже равна тактовой процессора. Соответственно, чем занять МК, пока идет отправка данных? У нас есть всего 16 тактов (или меньше). Обычно идет проверка флага опустошения буфера. Но тогда в чем профит аппаратного SPI, если на том же USI данные отправляются за те же 16 тактов, но МК занят тактированием(!)?. Вот чем занять МК? Отправить в остановку? Так дольше будем подготавливаться к остановке, потом уход на вектор прерывания (4 такта как минимум) и возврат из него. Ежели заниматься чем-то параллельно, то так же теряем время на обработку прерывания. Получается - только тупить в троттлинге?
    • Автор: parovoZZ
      Поставил LUFA, следом абсолютно не нужный мне ASF. Но в упор не понимаю - как создать проект на базе этой библиотеки из студии? Приходится вручную копировать папку с заголовочниками LUFA, прописывать пути в makefile, лишние телодвижения по добавлению папки в свойства проекта. Если я это делаю всё вручную, то тогда для чего это расширение? Примеры я могу и так покрутить. ЗЫ - не слишком высокий скилл в юзании Atmel Studio/
    • Автор: parovoZZ
      Есть у нас функция инициализации какого-то модуля или устройства, либо функция, которая просто возвращает значение регистра. Логичнее эти функции писать в файлах "драйверах", а не в main. Ну хотя бы с точки зрения переносимости кода между проектами. Но сразу появляется вопрос - что удобно программисту, то неудобно компилятору. Смысла в вызове однократно используемой функции или функции с одной командой нет - такие функции разумнее встроить в код. Но вот как быть - inline из другого *.c файла не вызывается, то бишь такую функцию надо писать в заголовке. Но такую функцию можно написать и как макрос (в том же заголовке - макрос в *.c файле тоже не виден али нет?). Так вот меня разрывает внутренняя устойчивая связь - как же поступить?
  • Сообщения

    • Здравствуйте! В разделе Ардуино не нашел подходящей темы,  да в принципе и не совсем по ардуино вопрос. Ниже приведена часть схемы прозвонки, которая может показывать как  напряжение, так и сопротивление. Измерение напряжение происходит посредством делителя, сопротивления-знаем напряжение стабилизатора и сопротивление прецизионного резистора, и через падение напряжения Ардуино вычисляет сопротивление участка. А теперь проблема, коммутация входов происходит через реле, которое управляется кнопкой. Программно была поставлена блокировка, чтоб реле не срабатывало если есть напряжение, но увы это не помогло. Спасет ли схему от случайного попадания напряжения  (~220-380В) если я поставлю диод VD2 (чтоб защитить источник стабилизированного напряжения) и VD4 (чтоб не спалить ардуино). По сути вход ардуино высокоомный и простой стабилитрон должен выдержать.
    • Заменил, поставил новые с магазина. Да еще не сказал плоттер включается, переходит по меню и сохраняет настройки.
    • Гораздо проще применить уже готовое решение не подключая дисплея например. Я, по своей неопытности, готовые исходники с atmega8 на atmega328p примерно 2 месяца переводил. А Вы хотите, что бы кто-то взялся за неизвестный ему МК под который пишется неизвестно на чём.
    • А куда верхний полигон силовой земли потеряли? Или плата трехслойная? Если нет, то плата в принципе нерабочая.
    • Существует формула для расчёта теплового сопротивления теплоотвода:
      Q=(T2-T1)/P-Q1-Q2, где
      Т2 - максимальная температура кристалла транзистора по справочнику,
      Т1 - максимально допустимая температура в коробке с нашим устройством, 
      P - рассеиваемая на транзисторе мощность,
      Q1 - тепловое сопротивление кристалл-корпус по справочнику, 
      Q2 - тепловое сопротивление корпус-радиатор. Освежите память.