Безопасно ли подавать небольшое напряжение на контакт GPIO в режиме вывода?

Я хочу подключить динамик последовательно с электролитическим конденсатором 10 мкФ от микроконтроллера, и мне было интересно, что произойдет, когда на выводе GPIO появится низкий уровень, учитывая, что конденсатор попытается разрядиться. Это безопасно ? Или мне нужно создать альтернативный путь к земле с помощью резистора?

Вы бы замкнули выходной контакт на землю и подняли его? Используйте буферный транзистор и не ждите чудес высокой точности!
Зачем конденсатор 10 мкФ? Если вам нужен фильтр нижних частот, вам понадобится резистор, а также конденсатор (для классического RC LPF). В противном случае это похоже на проблему XY.
@Andyaka Andyaka Я не создаю какое-то высокоточное или какое-либо устройство, просто пытаюсь ознакомиться с программированием MCU и хочу создать несколько тонов.
@ Andyaka Andyaka, не используй буферный транзистор, так как он не даст чудес двухтактного режима. Для этого вам понадобятся два транзистора. Если вы собираетесь критиковать, не смотрите глупо, делая это. Кроме того, следует направлять и поощрять экспериментирование и обучение.
@TonyM есть множество примеров дешевых драйверов lofi, использующих один эмиттерный повторитель с постоянным током, проходящим через динамик, но током, ограниченным резистором. Кроме того, хотя вы не можете повредить вывод io, общий постоянный ток, подаваемый на вывод питания микросхемы, серьезно начнет разрушать максимальное значение, разрешенное микросхемой. Короче говоря, это, вероятно, вы выглядите немного глупо, учитывая то, что вы только что лаяли!
Я предполагаю, что оператор использует последовательный конденсатор в качестве блокирующего колпачка смещения постоянного тока для аудиосигнала.
@Andyaka, ты снова упираешься в текущий лимит, постарайся снизить его до 350 восклицательных знаков в день. OP должен попробовать, отличный способ быстро научиться, MCU будет в порядке.
@TonyM основываясь на том, что вы сказали, что оператор должен попробовать это сам, это все равно, что подорвать всю причину, по которой этот сайт существует, чувак !!! Надеюсь, у меня осталось немного.
@ Andyaka Andyaka, ах, теперь ты просто пытаешься меня поймать, а не доказывать. Успокойтесь, долгий день и конец...

Ответы (3)

Нет, это не безопасно. В долгосрочной перспективе MCU выйдет из строя.

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

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

Если контакт ввода-вывода MCU настроен как выход, он будет использовать двухтактный драйвер («тотемный столб»). Он состоит из полевого транзистора от источника питания Vdd чипа к контакту ввода-вывода и другого полевого транзистора от контакта ввода-вывода к источнику питания GND чипа.

Когда на контакте высокий уровень, он генерирует (выводит) ток на Vdd, а когда на низком уровне, он пропускает (вводит) ток на GND. Эти токи должны быть указаны в спецификации, как правило, как IoH(max) и IoL(max) соответственно. Если нагрузка превышает эти указанные токи, полевые транзисторы будут ограничивать ток и рассеивать мощность в зависимости от падения напряжения на конкретном полевом транзисторе и потребляемого тока. Если поддерживать его достаточно долго, это может повредить MCU.

Тем не менее, при переключении, которое потребуется вашему звуковому эксперименту/приложению, потенциальное повреждение вряд ли станет проблемой. Возможно, вы не получите ожидаемого поведения, но с ним можно поэкспериментировать.

Я сделал то же самое - подключил контакт ввода-вывода через внешний резистор, чтобы немного увеличить последовательное сопротивление, а затем заглушку, к небольшому динамику. Без проблем. Однако. Я измерял пиковые напряжения на доп. узел резистора / крышки на несколько вольт ниже земли и выше моей шины из-за паразитных характеристик динамика (которые довольно сложны и меняются по частоте). Без внешнего последовательного резистора контакт ввода-вывода был бы напрямую открыт, а защитные диоды активны. . У них есть пределы (обычно менее 2 мА в наши дни). По крайней мере, добавленный внешний R поможет ограничить ток этого диода.
@jonk, интересные вещи и дорога, на которую я надеялся, что ОП будет расти по мере развития их схемы. Я предполагал, что их трасса через месяц не будет похожа на сегодняшнюю, но они бы многому научились, по ходу дела обретя некоторую уверенность. Спасибо.
Для любителей я меньше беспокоюсь о чрезмерной нагрузке на контакт ввода-вывода. (Очевидно, важно беспокоиться об ограничениях общего тока порта и нагреве.) Единственное, что я видел, это то, что они не соответствуют своим характеристикам напряжения при интенсивном движении (и нагревают крошечную точку в ИС). знают, что они должны выделять МНОГО алюминиевого ресурса для сильноточных контактов ввода-вывода. Так что маржи много. Что меня беспокоит, так это крошечные дорожки защитных диодов, которые также подключаются к контакту ввода-вывода, которые становятся активными, когда напряжение на выводе выходит за пределы шин. И возможная защелка. Добавление внешнего R помогает решить эту проблему.
@jonk, хорошие наблюдения, согласен. В то же время они намного надежнее, чем микроконтроллеры, с которыми я начинал, — 8048 и 8051. Я проверил выходной ток ввода-вывода NXP LPC1114, и он составляет 45 мА. Pin-диоды 74HC/HCT рассчитаны на непрерывный ток 20 мА. Эти вещи могут нести вещи. И я не удивлюсь, если OP воспроизводит такие шумы ввода-вывода и добавляет мощный операционный усилитель к динамику или использует наушники мощностью 5 мВт на сотни Ом от вывода ввода-вывода. Если ввод-вывод пойдет, они попробуют что-то еще. Надеюсь, они получат от этого хороший опыт :-)
LM386 был бы дешевым вариантом. Можно просто продублировать его секцию вывода с помощью нескольких BJT. Два контакта ввода / вывода могут управлять двумя выходами Glen BJT-пары с динамиком между ними для большей передаваемой мощности динамика, если это необходимо (конечно, на 180 градусов по фазе). В основном, просто управлять динамиком с H-мостом. На самом деле, я полагаю, можно было бы просто использовать детали H-моста, такие как UC2950. Или просто возьмите TDA8551, который представляет собой причудливую конструкцию BTL, рассчитанную на 5 В при выходной мощности 1 Вт, и включает регулятор громкости (я использую их). В наши дни даже brd класса D доступны почти бесплатно.

Majid_L имеет смысл - этап буфера будет меньше нагружать вывод ввода-вывода вашего микроконтроллера. Динамик с сопротивлением 8 Ом время от времени будет запрашивать ток выше допустимых пределов (в моменты после переключения на высокий или низкий уровень) при прямом управлении. Буфер может быть простым, например:

схематический

смоделируйте эту схему — схема, созданная с помощью CircuitLab . С транзисторным буфером контакт ввода-вывода будет иметь нагрузку около 800 Ом вместо 8 Ом (при условии, что коэффициент усиления тока транзистора равен 100). Тип транзистора не критичен, но нижний должен быть PNP, верхний NPN.
C1 добавлен, потому что транзисторы потребляют много импульсного тока от источника питания 5 В. Вы не хотите, чтобы эти импульсы уменьшали Vdd микроконтроллера, иначе может произойти неустойчивая работа (или понижение напряжения).

я думаю 10 мю Крышка F, о которой упоминал ОП, немного мала для такой нагрузки. Учитывая рекомендацию усилить его с помощью BJT, можно также порекомендовать увеличить емкость при этом.
@jonk Это хороший момент - для аудиоприложения конденсаторы емкостью 100 мкФ обеспечат частотную характеристику телефонного типа. Но для частот тона выше 2 кГц вполне достаточно 10 мкФ.
Хорошо, т "=" 10 мю Ф 8 Ом "=" 80 мю с . Даже 1 т означает, что уже около 63% падения по крышке к новому равновесному состоянию. Вот и все, что засело у меня в голове. Так что да, частота имеет значение. 2 кГц это как минимум несколько т , всего 10 мю Ф. Меня это все еще беспокоит.