Несвязанные контакты на микроконтроллерах: каковы преимущества / недостатки внутреннего подтягивания по сравнению с тристатом?

8

Существуют микроконтроллеры (например, все чипы ATmega, насколько мне известно), которые позволяют устанавливать порты на «выход», «входной тристат» или «входной внутренний подтягивающий резистор».

Каковы преимущества / недостатки любого из этих вариантов в случае неподключенных контактов? Как я знаю, оставить их на выходе - худшее решение. Микросхемы поставляются (я думаю) со всеми портами на входе, Tristate.

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

ВСЗ
источник
@ LeonHeller Я так не думаю, так как этот вопрос включает (и имеет в качестве ответа), что эти контакты должны быть спаяны с землей или иметь другие внешние цепи. Мой вопрос, в частности, касается ситуации, когда внешних соединений не существует, и контакт нигде не спаян. Кроме того, этот вопрос касается исключительно оборудования. Этот вопрос требует конкретной внутренней настройки.
вс

Ответы:

6

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

Чтобы форсировать уровень, вы можете установить вывод в качестве выхода или входа с внутренним подтягиванием . Мои измерения не показали какой-либо разницы в мощности, потребляемой этими двумя решениями, но руководство (микроконтроллера Jennic) предложило использовать последнее (ввод с подтягиванием). Я бы сказал, что это разумно, потому что он использует более слабое подтягивание, чем режим вывода , и это может уменьшить утечку.

клабаккио
источник
5

Старый взлом FPGA состоит в том, чтобы подключить неиспользуемые контакты к заземляющей плате на печатной плате и сконфигурировать их как выходы, приводящие в действие 0. Это улучшило заземление и уменьшило отскок земли от выходов, которые вы быстро переключали.

Это, конечно, не имеет значения для микросхем с низким энергопотреблением, таких как AVR, я бы оставил контакты не подключенными и настроил их «вход с подтягиванием», чтобы они не оставались плавающими.

Однако это может стать более важным, поскольку мы приближаемся к ARM-чипам с частотой почти ГГц за доллар ...

Брайан Драммонд
источник
Очень интересен первый абзац о заземлении!
Clabacchio
Да, но в микро, это может поднять перспективу вызванного программным обеспечением волшебного дыма! Есть еще кое-что, что вы можете сделать в FPGA, чтобы уменьшить вероятность таких сбоев ...
Брайан Драммонд,