Выходной корректор GPIO

Мне подсказали, что GPIOвыходы на Raspberry нельзя использовать в качестве опорного напряжения: например, GPIO TRUEможет давать только 3,2В, а GPIO FALSEможет давать 0,1В. С другой стороны, согласно Exploring the 3.3V Power Rail, шина 3.3V должна быть довольно стабильной. Что я хочу сделать, так это исправить GPIOвывод таким образом, чтобы он действительно возвращал что-то очень близкое к напряжению на шине (3,3 В), когда TRUEи что-то действительно близкое к напряжению земли (0,0 В), когда FALSE:

введите описание изображения здесь

Я был бы удовлетворен также инвертированным логическим решением, т.е. что оно возвращает что-то очень близкое к напряжению на шине (3,3 В), когда FALSEи что-то очень близкое к напряжению земли (0,0 В) TRUE. Я знаю, что инверторы в принципе должны делать такую ​​работу, но я не знаю, насколько они точны.

У меня есть несколько вопросов:

  • Какая простейшая схема выполняет эту работу?
  • Подойдут ли готовые инверторы для инвертированного логического решения?

Спецификация для схемы:

  • выходной ток менее 1 мА,
  • TRUE/ FALSEили FALSE/ TRUEнапряжения OUTменее 0,04 В от напряжения на шине и напряжения на земле.

Я уже предположил (надеюсь, я прав), что напряжение на шине находится в пределах нескольких процентов от 3,3 В.


@Andy aka решение:

введите описание изображения здесь

Опорное выходное напряжение может регулироваться в диапазоне от 0 В до 1 В. При GPIO= FALSEравно OUTопорному напряжению. При GPIO= TRUE, OUTсоставляет (по моим расчетам) менее 1 мкВ.

(Не могли бы вы подтвердить, что это предлагаемое вами решение?)

"Эта схема работает?" скорее зависит от того, что это за работа. Насколько стабильным должен быть этот выход и какую нагрузку он ожидает?
Хм, какие у тебя проблемы для начала? Почему высокого сигнала от GPIO недостаточно?
Ваши мосфеты неправильно расположены. P-канал должен быть вверху.
@Finbarr Мне нужно, чтобы выход был как можно ближе и стабильнее к шине 3,3 В. Выход идет на делитель напряжения с сопротивлением не менее нескольких десятков кОм.
@WesleyLee Мне сказали, что GPIO недостаточно надежен, что высокий сигнал может быть, скажем, только 3 В.
@Andyaka Это не инвертор / НЕ логика. Как раз наоборот, я объяснил в вопросе.
Ответ может быть любым: от использования N-FET с подтяжкой до 3,3 В до фактического измерения выходного сигнала вашего RPi (это может быть 3,3 В и достаточно) до, возможно, вывода включения на опорном напряжении 3,3 В. Или настроить резистивный делитель.
Если это N-fet наверху, он на самом деле не включится!
@pcj50 фейспалм, ты прав. Мое решение отстой. Я перефразирую вопрос без своего «решения».
Если это обязательно должно быть 3,3 В, я бы сделал отдельный LDO с собственными развязывающими конденсаторами, управляемыми от шины 5 В, с входом разрешения (вывод EN или ~ EN), управляемым от GPIO.
@ pjc50 Предположим, что GPIO TRUE дает 3,2 В, а GPIO FALSE дает 0,1, мне нужно что-то, что дает 3,3 В или 0,0 В для GPIO TRUE и 0,0 В и 3,3 В для GPIO FALSE.
Но для чего вам на самом деле нужно именно 3,3 В от GPIO? Вы строите резисторный ЦАП или что-то в этом роде?
@Pygmalion нет, вы не правы, это должен быть P-канал вверху.
@RichardtheSpacecat Мне нужно относительно точное опорное напряжение для контроллера тока. При включенном GPIO напряжение должно быть, скажем, 0,5 В, при выключенном GPIO напряжение должно быть 0 В, что полностью остановит ток. Отрицательная логика тоже подходит.

Ответы (2)

Из комментария ОП: -

Мне нужно относительно точное опорное напряжение для регулятора тока. При включенном GPIO напряжение должно быть, скажем, 0,5 В, при выключенном GPIO напряжение должно быть 0 В, что полностью остановит ток. Отрицательная логика тоже подходит.

Для меня это означает, что вы должны использовать резистивный делитель потенциала для создания 0,5 вольта из 3,3 вольта, так что ...

Самым простым решением было бы жестко подключить верхний резистор к +3,3 В и использовать N-канальный полевой МОП-транзистор для фиксации опорного входа (ранее 0,5 В) до 0 В.

Резисторный делитель не является точным, особенно при изменении VCC или тока нагрузки.
@TurboJ Это может быть достаточно хорошо, в зависимости от работы. Поскольку у нас до сих пор нет точной спецификации того, чего на самом деле хочет достичь ОП, я думаю, любой ответ имеет значение.
@RichardtheSpacecat Я ожидаю, что более высокая точность означает более сложную схему. Чего я действительно хочу, так это решения, которое любой любитель (вроде меня) сможет легко построить. Будет большим упрощением считать , что линия 3,3 В достаточно стабильна (скажем, с погрешностью в несколько процентов). Конечно, если вывод GPIO такой же точный, то вопрос бессмысленный.
Я знаю, как построить делитель напряжения, однако мне очень непонятно, как включить/выключить выход делителя напряжения при изменении GPIOлогики.
@Pygmalion N-канальный полевой МОП-транзистор можно заставить работать как переключатель включения / выключения. Когда он выключен (разомкнутая цепь), опорный вход на вашем чипе составляет 0,5 вольт, а когда MOSFET включен, он действует как короткое замыкание и понижает опорный вход до 0 вольт. Сток на вход ref, источник на 0 вольт и вентиль на вывод IO. Выберите МОП-транзистор с низким сопротивлением (скажем, ниже 0,1 Ом). Кроме того, о каких номиналах резисторов вы говорите, которые устанавливают 0,5 вольта?
Думаю, я понял идею.
@Andyaka Я разместил ваше предложение, так как понял его как другой ответ: выходное напряжение можно регулировать в диапазоне от 0 В до 1 В, R3 также выполняет функцию защиты GPIO (в случае, если потенциометр закручен до конца). Если вам это нравится, вы можете использовать картинку в своем ответе. Я удалю свой ответ после того, как вы подтвердите.
Да, это идея, но используйте меньшие значения сопротивления, чтобы сделать делитель потенциала, и я бы не стал использовать потенциометр.

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

Вы должны принять во внимание, что ваши Феты имеют р г с о н , что повлияет на выходное напряжение, если нагрузка потребляет значительный ток. Следовательно, вы столкнетесь с напряжением ниже 3,3 В в зависимости от нагрузки.

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

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

смоделируйте эту схему - схема, созданная с помощью CircuitLab

Это позволяет получить довольно точное выходное напряжение, которое является гораздо более стабильным. Конденсаторы не указаны, см. примечания по применению в таблице данных. Кроме того, как только вы узнаете об импедансе вашей нагрузки, адаптируйте R3 к вашим потребностям.

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