На новых Arduinos можно установить pinMode в одном из трех состояний: OUTPUT
, INPUT
, и INPUT_PULLUP
.
На этой странице написано:
Чип Atmega на Arduino имеет внутренние подтягивающие резисторы (резисторы, которые подключаются к источнику питания внутри), к которым вы можете получить доступ. Если вы предпочитаете использовать их вместо внешних понижающих резисторов, вы можете использовать аргумент INPUT_PULLUP в pinMode (). Это эффективно инвертирует поведение, где HIGH означает, что датчик выключен, а LOW означает, что датчик включен.
Я скорее уверен, что инвертирование поведения - это не единственное, что он делает.
Что делает INPUT_PULLUP
? Чем он отличается INPUT
и как решить, какой из них использовать?