Answers:
上拉和下拉通常用于确保在未主动驱动的情况下线路具有定义的状态。它们用于输入以防止浮线,从而在高低和中间“未定义”区域之间快速切换。输出通常不需要它们。
但是大多数MCU引脚是GPIO,有时在启动时被定义为输入而不是输出。如您所说,有时候您不希望IC引脚输入在启动时浮动,特别是像通常使用微控制器的GPIO驱动的复位引脚那样。
这是当您在线路上使用弱上拉或下拉时。因为它们很弱,并且您选择了默认状态,所以它们不会对电路造成干扰(如果假设输入始终一直为低电平,然后拉高,则选择弱下拉,反之亦然),但是它们确实消耗一点电流。这就是为什么您选择一个足以完成任务的电阻(值越高,电阻越弱)的原因。
使用上拉(或下拉,更罕见)的另一种常规输出设置是漏极开路或漏极开路连接。这些只会将连接压低,或释放线路,使其悬空。上拉电阻使线路进入高逻辑状态。
如您所述,可以在期望作为输出引脚的引脚上使用上拉/下拉电阻来保证输入状态。
这样做是为了减轻固件/ MCU的故障,但仅可用于防止出现高阻状态(基本上,该引脚被偶然配置为输入)。
我对大多数MCU熟悉的是默认IO引脚在启动时进入高阻抗输入状态(但不能保证,而且我在所有MCU系列产品附近都没有经验),这意味着代码初始化引脚可能要花费一些时间状态被执行。
有时,这无关紧要,而其他时候则如此。
您有时可能会有一个引脚作为输出,例如用于I2C。