プルアップ抵抗

プルアップ抵抗（プルアップていこう、）は、電子回路の信号入力端について開放時やそれに準ずる状況での電位不定を避けるために微少電流を流し続けるための抵抗である。Lowアクティブの入力端子をプルアップ抵抗を介してVddなどの高電位電圧源に接続しておくことにより、開放時の電位不安定を防ぎ、高電位を保つ。入力端子より内側の抵抗である。同様に、Highアクティブの入力端をグランド（アース）など低電位に接続し、開放時に低電位を保つための抵抗はプルダウン抵抗と呼ばれる。
概要.
以下、注記なき場合はCMOSのような、単電源で対称的な電子回路によるディジタル論理回路を前提とする。そのような回路へ入力は、通常High または Low と見なされる電圧が印加される前提であり、High とも Low ともみなされない中間電圧の状態は、論理的には動作不定であり、誤動作を起こす。これは、悪い場合には電気的/電力的な誤動作や破損につながりうる。回路の入力端子そのものが開放されているときや、そこに接続されている機器が電源やグランドに未接続といった俗にいう「浮いている」状態があると、周囲の静電気や電磁誘導により絶縁が破壊される危険性もある。その対策として、プルアップやプルダウンが必要となる。
プルアップ抵抗は、ある信号線と High に相当する電圧レベル（普通は電源）との間に挿入され、その配線への入力が「浮いている」ときに強制的に High 状態にする。その抵抗値は、Low 信号入力を阻害しないためにある程度大きい必要がある。
プルアップ処理を必要とする単純な例としては、外部からの入力のためのスイッチがある。通常そういったスイッチの配線は、 Low に対してスイッチONのとき接続、OFF状態で切断とされるがこれをプルアップする。
また、以上で述べた独立の入力の処理の他に、オープンコレクタの出力などを複数つなぐ場合の共通線をプルアップすることもある。実例としてはI2Cなど（後述）。
プルアップ/プルダウンの抵抗値は、一般的に次のような観点に基づいて決められる。優先順に、
また、CMOSのように対称な回路方式の場合はプルアップとプルダウンの関係も（理論上は）対称だが、非対称な回路方式の場合は非対称になる。
プルダウン抵抗.
プルダウン抵抗（プルダウンていこう、）は、プルアップ抵抗とは反対に、開放状態の入力端子を Low レベル電圧（通常、電位0V）に保つために使われる。
CMOSではその対称性から、原理的にはプルアップとプルダウンは対等といえる。
非対称な方式については、たとえばTTLの入力は開放時は自然に High となる。これをプルダウンで Low にするにはプルアップに比べて大きい電力を流す必要があり余計に電力消費する。そのためTTLではプルアップが好まれる。
実例.
バイポーラ論理ファミリは5Vで駆動され、プルアップ抵抗にはだいたい1kΩ～4.7kΩ程度を使う。抵抗値はその回路の電源や温度の特性を考慮して常に正しく動作するよう選択する。CMOSやMOS論理では、その高い入力インピーダンスに合わせ、220kΩ～1MΩ程度のより大きな値とすることができ、消費電力が少なくて済む。
出力側の例としては、TTLのICからリレーの開閉を制御する場合が挙げられる。TTLのICの Low 状態の出力をそのまま用いてもリレーを駆動することは出来ない。大電流を流すことの出来る増幅回路をもつ電圧入力の端子へ、プルアップ抵抗によって安定化された制御電圧（信号）を印加することで、安定した負荷制御を行う。
プルアップ抵抗はICチップ内に組み込まれていることもある。マイクロコントローラでは、入力端子毎にプログラマブルなプルアップ抵抗を内蔵しており、必要となる外部部品を極力少なくしているものが多い（プルダウン抵抗も内蔵していることもある）。
プルアップ抵抗の欠点として、電力消費が増える点と能動電流源に比べて速度が遅くなる点が挙げられる。論理ファミリによっては、プルアップ抵抗から流れ込む過渡電流に影響されやすく、プルアップ用に別のフィルタ付き電源を必要とする場合がある。
I2C.
I2Cでは、クロック信号線 (SCL) とデータ信号線 (SDA) にプルアップ抵抗が接続されており、機器側の端子はオープンコレクタ相当になっていて信号線をLowにすることができる。すなわち、なにもないときはいずれの信号線もHighになっている。