Требуются ли подтягивающие / понижающие резисторы (внутренние или внешние) только для выводов MCU INPUT? Напротив, вывод MCU, сконфигурированный как OUTPUT, «знает, на каком уровне он находится», потому что он управляет - «плавающий» вывод MCU OUTPUT, привязанный к некоторому входу другой цепи, не имеет смысла, потому что состояние вывода MCU может быть только высокий или низкий ... я имею это право? Теперь, при загрузке или сбое MCU, может быть выгодно привязать подтягивание / опускание к этой строке «Выход MCU на вход IC», чтобы гарантировать, что вход для некоторой IC никогда не будет плавающим.
Может быть, я просто ответил на свой вопрос здесь ... В зависимости от приложения можно использовать нагрузочные / понижающие резисторы на входных и выходных контактах?
Вы имеете это право; обычно вам не нужны подтяжки на выходах, но они могут быть полезны для обеспечения безопасности во время загрузки и т. д.
Еще одна причина для использования подтягивания на выходе: если несколько выходов от нескольких MPU соединены друг с другом, вы действительно не хотите, чтобы один управлял VCC, а другой управлял 0V на одном и том же проводе! Таким образом, вы либо подаете 0 В на выход, либо выключаете выход (возможно, настроив его как вход). Когда все выходы отключены, провод подтягивается к «1» (Vcc). Это называется «проводным И» сигналом. (Вы можете сделать то же самое вождение '1' или выключить, с выпадающим R, тогда это называется проводным ИЛИ).
Этот шаблон имеет несколько применений, в том числе позволяет любому одному MPU сигнализировать об ошибке или включать светодиод или разрешать им всем по очереди отправлять друг другу сообщения по одному проводу.
источник
Как вы указали, использование резисторов подтягивания / понижения на выводах, которые, как ожидается, будут выходными, может быть там, чтобы гарантировать входное состояние.
Это сделано для смягчения сбоя микропрограммы / микроконтроллера, но будет работать только для защиты от состояния Hi-импеданса (в основном, контакт настроен как вход случайно).
Большинство MCU знакомы с выводами ввода-вывода по умолчанию для входного состояния с высоким импедансом при загрузке (но не гарантирую, и у меня нет опыта где-либо вблизи всех семейств MCU), что означает, что может пройти некоторое время, прежде чем код инициализирует вывод состояние выполнено.
Иногда это не имеет значения, а иногда это имеет значение.
источник
Ответ в том, что это зависит от семейства микроконтроллеров и от поведения по умолчанию при Power On Reset. Если микроконтроллер может быть сконфигурирован только для «выхода» или «входа» на выводе, это обычно означает, что он использует драйвер Totem-Pole для вывода - то есть, по сути, это выходной сигнал строба CMOS, и в этом случае выход всегда направляется к рельсу, поэтому нет никаких оснований для пассивного воздействия на него. Единственный случай, когда имеет смысл использовать подтягивания / опускания на выходе, это когда он сконфигурирован как топология Open Collector / Open Drain. Гораздо чаще встречаются внутренние опции подтягивания / опускания, которые применимы только тогда, когда вывод настроен как вход. Если вы можете гарантировать, что в вашей системе ввод всегда чем-то обусловлен, это потребляет немного энергии.
источник
Вы можете иметь вывод, который иногда является выходом , например, для выполнения I2C.
источник