Что делать с плавающими контактами Arduino?
У меня есть несколько неиспользуемых штифтов, следует ли соединить их вместе и с землей или оставить плавающими?
@ElectronSurf, 👍5
Обсуждение3 ответа
Лучший ответ:
Проще всего установить для них значение INPUT_PULLUP. Если вам нужно чисто аппаратное решение, вы можете подключить их к GND через несколько резисторов (подойдет 10 кОм или что-то еще, что у вас есть в таком порядке величины).
Вы не хотите просто соединять их непосредственно с землей, и вы не хотите соединять их напрямую друг с другом — это может привести к короткому замыканию и отключению портов ввода-вывода, если какой-либо из контактов будет установлен как выход и ВЫСОКИЙ в программном обеспечении.
Как использование внутренних подтягивающих резисторов может привести к увеличению потребления тока (комментарий Гербена )? Возможно, укажите это в своем ответе (правда это или нет)?, @Peter Mortensen
Это не так. Это сделало бы наоборот. Подтянутый контакт может использовать только ток, который протекает как «ток утечки» через входную схему (незначительные величины). Плавающий контакт использует ток каждый раз, когда он заставляет входную схему переключать состояния., @Majenko
Это было просто мое наблюдение в одном или двух моих проектах. Так что принимайте это с недоверием., @Gerben
Оставлять их плавающими в большинстве случаев не будет никакого вреда. Даже прикосновение к контактам ничего не разрушит. Привязывать дополнительное внешнее оборудование просто не нужно (хотя резистор 10k тоже был бы безвреден). Конечно, вы также можете подумать о потенциальном дополнительном использовании этих булавок, если хотите сделать свой дизайн немного «на перспективу». Например, добавление подтягивающих резисторов 4k7 к A4 и A5 и разъема может позволить вам использовать интерфейс I2C для дополнительных функций.
Я столкнулся с нестабильной работой киоскового аудиоплеера, который я построил много лет назад, когда оставил неиспользуемые контакты плавающими. Как только я заземлил их через резистор 10k, все было в порядке. Это было в очень сухой среде, поэтому я подозреваю, что проблема была в статике.
- Какое назначение контактного конденсатора ввода-вывода на микроконтроллере AVR?
- Barebones AVR — подключение вывода RESET к Vcc
- ATMega328 работает, но не выводит ни на какие контакты
- Почему я читаю только нули из PORTB?
- Использование PortB в качестве приемника, не работает
- Физическое прохождение через пин для доступа к другому
- NodeMCU - Vin контакт как выход 5V?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
Просто оставьте их плавающими. Единственная проблема заключается в том, что при определенных обстоятельствах это может привести к тому, что MCU будет потреблять немного больше тока. Это проблема только в том случае, если вы работаете от батарей. В техническом описании предлагается включить внутренние подтягивания, как предложил Маженко, но мне никогда не везло с этим, так как каким-то образом это приводило к большему току. В конце концов я установил их на ВЫХОД и НИЗКИЙ., @Gerben
@Gerben С включенными подтягиваниями вы можете получить ток утечки только через полевые МОП-транзисторы и внутренний резистор (который будет порядка наноампер, если это так). С плавающим входом ток потребляется каждый раз, когда состояние входа переключается, когда он колеблется. Активное управление отключенным выходом теоретически приведет к большему потреблению тока через входную схему, поскольку его ограничивает только ток утечки полевых транзисторов, а не ток утечки плюс сопротивление подтяжки., @Majenko
@Gerben Ток утечки указан как 1 мкА при 5,5 В через входную схему в таблице данных. Это означает сопротивление 5,5 МОм. Добавьте к этому ~30 кОм подтяжки, и утечка составит 0,995 мкА при включенной подтяжке по сравнению с 1 мкА при включенном выходе., @Majenko
@Gerben Вам может показаться интересным: http://www.ti.com/lit/an/scea046/scea046.pdf, @Majenko
@Majenko Я думаю, это то, что упоминается в техническом описании. Если входное напряжение плавает и колеблется между Vih и Vil, схема ввода (сравнения) потребляет больше энергии. Я думаю, что это, вероятно, довольно редко. Кроме того, применимо только в том случае, если MCU не спит, что не так много во всех моих проектах с батарейным питанием., @Gerben
@Gerben В спящем режиме вход отключается, а вход триггера Шмитта замыкается на землю., @Majenko