Есть ли способ отключить контакт 5V?

Я пытаюсь найти способ включить/выключить контакт 5V. Я хочу, чтобы напряжение переходило на другой провод в определенной точке. Он должен быть выключен, а затем, когда что-то произойдет, 5V должно включиться.

Как я могу это сделать?

, 👍5

Обсуждение

Это похоже на проблему XY. Можете ли вы рассказать, почему вы хотите отключить контакт 5V? Возможно, есть лучший способ достичь цели., @BowlOfRed

Можете ли вы предоставить схему, которая лучше иллюстрирует ваш проект? Разве контакт 5V не запрограммирован на постоянное «включение»? Вы можете добавить внешний транзистор для переключения цепи, подключенной к контакту 5V, но я не думаю, что вы можете переключать контакт на самой плате. Хотя я могу ошибаться., @Greenonline


4 ответа


2

Вывод 5V не управляется программно, он жестко подключен к USB или выходу регулятора напряжения Vin.

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

,

1

Вы действительно не хотите этого делать. Контакт 5V находится на шине питания вашей платы Arduino. Если бы его было возможно отключить, вся Arduino выключилась бы.

,

2

Если я правильно вас понимаю, вам нужен выход 5 В, который находится под программным управлением. Вы знаете, какую мощность вы хотите извлечь из контакта?

Если спрос довольно низок, вы можете использовать один из цифровых контактов напрямую — они будут обеспечивать около 40 мА на «официальном» Arduino.

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

,

5

Для энергосберегающего переключения (наряду с относительно высоким током) я рекомендую использовать транзистор Дарлингтона, подключенный к одному из выходных контактов (цифровой для включения/выключения, аналоговый для переменного). Тогда вы просто вызовете pinMode(A0, OUTPUT); затем digitalWrite(A0, HIGH); Вот набросок, который я сделал, демонстрируя, что я имею в виду:

Обратите внимание, что обычный транзистор потребляет больше тока от вывода Arduino, что может быть вредно для Arduino и приводит к трате энергии.

,