Можно ли использовать скользящий переключатель без резистора?
Я понимаю, как выдвижные и выдвижные резисторы работают с кнопками, и я также понимаю, что аналогичная идея может быть применена к ползунковым переключателям. Кроме того, я знаю, что в некоторых версиях Arduino есть внутренний резистор, который можно использовать, если правильно настроить код.
Мне было интересно, могу ли я, не используя внутренний подтягивающий резистор, подключить скользящий переключатель без какого-либо резистора, например так:
Как я понимаю, это должно вести себя точно так же, как при использовании понижающего резистора. Если переключатель находится с левой стороны, вывод 7 будет отображаться НИЗКО
, а если переключатель находится с правой стороны, он будет отображаться ВЫСОКО
.
Это проблема с подключением выключателя таким образом? Есть ли причина, по которой использование резистора было бы лучше?
В своем окончательном проекте я намерен использовать плату Digispark, и я не хотел бы полагаться на ее внутренний резистор, а также я бы хотел избежать использования внешнего резистора, если смогу.
@user3347814, 👍1
Обсуждение1 ответ
Лучший ответ:
Возможно, вы сможете это сделать, а может, и нет. Это зависит от переключателя.
Существует два класса ползунковых переключателей:
- Сделай перед перерывом
- Перерыв-перед-созданием
В первом случае контакт, к которому вы скользите, подсоединяется до того, как отсоединяется тот, от которого вы соскальзываете. Это может вызвать неисчислимые проблемы, так как вы в основном создадите короткое замыкание между 5 В и GND. Все умрет.
В последнем случае контакт, от которого вы удаляетесь, сначала отключается, а затем подключается новый контакт, к которому вы приближаетесь. Это безопаснее, но это означает, что существует короткий период, пока вы перемещаете переключатель, когда ни один контакт не подключен. В это время входной вывод плавает - так же, как если бы у вас вообще ничего не было подключено (что на самом деле так и есть).
Это, конечно, нежелательный сценарий, поскольку это, вероятно, наибольшее количество отказов, которое вы когда - либо увидите при переключении-отказы, которые вам нужно устранить в программном обеспечении, чтобы дать вам чистый сигнал.
Этот период неопределенности устраняется, если у вас есть выдвижной или выдвижной резистор, так как никогда не бывает периода, когда нет подключения, и никогда не бывает периода, когда вы рискуете замкнуть питание и заземление. Все, чем вам тогда придется довольствоваться, - это естественным отскоком контактов по мере их закрытия.
Теперь я понимаю важность резистора. И все же последний вопрос. Есть ли разница между использованием выдвижного или выдвижного резистора? Или я могу использовать то или другое?, @user3347814
Это не имеет значения, вы можете использовать и то, и другое., @Majenko
Я не уверен, насколько они распространены, но переключатель "Сделать до разрыва" по-прежнему будет проблемой, даже если на центральном проводе есть подтяжка или оттяжка., @PMF
@PMF только в том случае, если вы продолжите (теперь бессмысленное) подключение питания и заземления., @Majenko
- Узнать статус, подключен ли коммутатор к arduino или нет?
- Библиотека DHT.h не импортируется
- Сброс Arduino UNO с помощью SIM800L
- Как узнать, нужно ли мне использовать резистор в цепи?
- digitalRead не читает входной контакт ESP8266-01
- Невозможно получить и распечатать SMS на последовательном мониторе с помощью Arduino Uno и SIM900A.
- Какой релейный модуль купить и в чем разница между 1-канальными и 2-канальными релейными платами
- Влияет ли размер AWG на сигнал от датчиков?
Что плохого в использовании внутренних подтягиваний? Это проще, чем ваша схема, потому что вам не нужно подключение 5 В. И для кода это просто
pinMode(pin, INPUT_PULLUP)
вместоpinMode(pin, INPUT)
. И у реального коммутатора может быть короткое время, когда во время переключения ничего не подключается. Для обработки этого вам, возможно, потребуется увеличить время отмены с помощью вашей настройки., @chrisl