ア | イ | ウ | エ | オ |
カ | キ | ク | ケ | コ |
サ | シ | ス | セ | ソ |
タ | チ | ツ | テ | ト |
ナ | ニ | ヌ | ネ | ノ |
ハ | ヒ | フ | ヘ | ホ |
マ | ミ | ム | メ | モ |
ヤ | ユ | ヨ | ||
ラ | リ | ル | レ | ロ |
ワ | ヰ | ヴ | ヱ | ヲ |
ン |
A | B | C | D | E |
F | G | H | I | J |
K | L | M | N | O |
P | Q | R | S | T |
U | V | W | X | Y |
Z | 数字 | 記号 |
回路を、抵抗器を挿んで電源ラインに接続すること。このときの抵抗器をプルアップ抵抗という。
例えば、CPUのINポートに、押しボタンスイッチを付けることを考えてみる。
スイッチを繋げる場合、いくつかの工夫が必要である。
例えばもし単にGNDに繋げるだけだと、スイッチを押せばLレベルになるが、押されていない場合のレベルが不明である。これは、押されていない場合に「どこにも繋がっていない状態」になるからである。
これを、回路がオープンになるといい、この様な状態ではレベルが確定できないため入力が不安定になり、誤動作してしまう。
上の例では、スイッチがGNDに繋がっている。使用時Lレベルなので、未使用時にはHレベルになるよう、VCCにも結線をすることになる。ただ、単に回路をVCCに繋げるだけだと、スイッチが押された時にVCCとGNDが短絡し故障してしまうので、抵抗器を挟む。これがプルアップ抵抗である。
こうすると、スイッチが押されていない時はGNDに対するラインは断線しているのと同じ状態なので、電流は流れない。
代わりに、抵抗を介してVCCとCPUが繋がるので、INポートにはVCCの電流が流れ込むことになる。
従って、押されていない時には、CPUから見るとHレベルの入力があるように見える。回路がオープンにならないため、入力も安定となる。
スイッチが押された場合、ラインには無抵抗でGNDに直結するラインが形成されることになる。
さて、電流は抵抗の低い方に流れる特徴があるが、CPUのINポートには意図的に抵抗器が組み込まれており、電流が流れにくいようになっている。
そこでこの場合、電流はCPUより抵抗値の低い側、つまりスイッチを経由してGNDに流れるため、このラインは0Vとなり、CPUのINポートはLレベルの入力があるように見えるわけである。
プルアップでもプルダウンでもさして変わらないが、歴史的にプルアップが多用されて来た。
なぜなら、昔のTTL回路などではHレベルでは電流が殆ど流れず、Lレベルになって電流が流れる構成となっていたためである。このため省エネの観点から、あるいはまた、TTLではワイヤードORを構成しやすい、ノイズマージンが良い等の特徴があることから、TTL回路ではアクティブ・ローが主となった。
この流れで、現在でも多くのICがアクティブ・ローとなっている。未使用状態ならプルアップしておけば非アクティブにすることができる。
最近の主流CMOSなら、TTLと違いスレッショルド電圧はH/Lが対称であり、ノイズマージン等のメリットはないのでアクティブ・ローにこだわる理由はないが、今でも多用されているのは、技術者の慣れなどを含む、慣例によるものであると思われる。
コメントなどを投稿するフォームは、日本語対応時のみ表示されます