Существуют микроконтроллеры (например, все чипы ATmega, насколько мне известно), которые позволяют устанавливать порты на «выход», «входной тристат» или «входной внутренний подтягивающий резистор».
Каковы преимущества / недостатки любого из этих вариантов в случае неподключенных контактов? Как я знаю, оставить их на выходе - худшее решение. Микросхемы поставляются (я думаю) со всеми портами на входе, Tristate.
Я спрашиваю конкретно о ситуации, когда эти контакты нигде не спаяны. (или, возможно, припаян к земле, но в общем случае нигде не следует паять)
Ответы:
Если у вас есть неподключенный контакт, первое, что вам нужно, это закрепить его на рейке, Vcc или заземлении. Это необходимо, потому что плавающее состояние может вызвать промежуточное состояние во входных буферах, что приводит к статическому поглощению мощности.
Чтобы форсировать уровень, вы можете установить вывод в качестве выхода или входа с внутренним подтягиванием . Мои измерения не показали какой-либо разницы в мощности, потребляемой этими двумя решениями, но руководство (микроконтроллера Jennic) предложило использовать последнее (ввод с подтягиванием). Я бы сказал, что это разумно, потому что он использует более слабое подтягивание, чем режим вывода , и это может уменьшить утечку.
источник
Старый взлом FPGA состоит в том, чтобы подключить неиспользуемые контакты к заземляющей плате на печатной плате и сконфигурировать их как выходы, приводящие в действие 0. Это улучшило заземление и уменьшило отскок земли от выходов, которые вы быстро переключали.
Это, конечно, не имеет значения для микросхем с низким энергопотреблением, таких как AVR, я бы оставил контакты не подключенными и настроил их «вход с подтягиванием», чтобы они не оставались плавающими.
Однако это может стать более важным, поскольку мы приближаемся к ARM-чипам с частотой почти ГГц за доллар ...
источник