デジタル回路のポイント – プルアップ抵抗

デジタル回路のポイント – 抵抗による分圧と電圧降下

の続きとなります。

前回は,以下のような回路で,スイッチの抵抗値を,「ほぼ無限大」「ほぼゼロ」と扱うことで,A 点における電圧が,抵抗分圧により,それぞれ 5V,0V になることを確認しました。

この時の,抵抗 R をプルアップ抵抗と言います。

では,なぜこの抵抗が必要になるのでしょうか?

プルアップ抵抗を取ってしまったら…?

スイッチの抵抗値が「ほぼ無限大」または「ほぼゼロ」であれば,R の抵抗値はいくつであっても,理論上,スイッチがオフ,オンで,5V,0V になるはず…というのは,前回も書きましたが,では,この抵抗 R を無くしてしまったら,どうなるでしょうか?

このようになります。

スイッチオフ状態では,A 点が 5V になることはわかりますよね。

スイッチをオンにすると…

A 点の電圧は,分圧されるはずですが,はたしてどのように電圧が分割されるでしょうか?

う〜ん,これは難しいですね。明確に抵抗値が割り当てられていませんし,導線にもわずかながら抵抗値があるので,二分割されそうな気もしますが,導線の長さによっても変わってきそうで,とても不安定な状態です。

また,スイッチをオンにすると,プラス電源と,GND が,導線によって直結されます。導線とスイッチオン状態の抵抗値を「ほぼゼロ」と考えると,オームの法則により,流れる電流は無限大となってしまい非常にマズイ状態です(短絡状態と言います)。

電圧を安定させるために高い状態に引き上げる

このような問題が発生してしまうので,電源電圧との間に抵抗を入れて,電圧を安定させるわけです。

スイッチオンにした時に,確実に分圧されると同時に,短絡を回避する役目もあるんですね。

電源電圧に引き上げるので,プルアップというわけですね。

ハイインピーダンス状態とプルアップ抵抗

デジタル回路は,電圧の高い状態(H レベル)と電圧の低い状態(L レベル)で動作します。…というのは聞いたことありますよね。

ところが実際は,電圧の高い状態でも低い状態でもない状態があるのです。

Z80 コンピュータを作ろう!(その1)

以前,上記の記事内に,Z80 へのデバイス接続の際に,複数のデバイスを同一信号線に接続すると,信号がぶつかってしまうので,やり取りするデバイスのみと接続し,他のデバイスは電気的に切り離す必要があることを書きました。

この電気的に切り離された状態,言い換えると電圧の高い状態でも低い状態でもない状態を,(デジタル回路における)ハイインピーダンス状態と言います。(Hi-Z と略すこともあります)

また,このサイトで扱うデジタル IC は,ほとんどが CMOS 構造です。

CMOS IC の入力端子は,必ず電圧が高い状態か,低い状態のどちらか一方を接続する必要があります。

入力端子が,ハイインピーダンス状態(入力オープン状態とも言う)だと,その内部構造により IC が壊れる可能性もあるのです。(ちなみに出力端子がオープンになるのは問題ありません)

そのため,入力端子に接続されているデバイスが切り離されている状態でも,入力電圧を安定させるために,プルアップ抵抗で電源電圧まで引き上げるわけです。

このようにプルアップされている状態で,接続デバイスの出力が,入力端子を電圧が低い状態(L レベル)にすると,先程のスイッチの例と同じく,L レベルが入力されます。

また,入力端子を電圧が高い状態(H レベル)にすると,プルアップの抵抗は無視され,H レベルが入力されるというわけです。

接続先の内部抵抗によって電圧が変わるのでは?

前回の分圧の説明で,A 点に接続するデバイスの内部抵抗によって,電圧値が変わる云々…と書きました。

では,A 点に CMOS デジタル IC の入力端子を接続したらどうなるでしょうか?

結論としては,R の抵抗値が 数kΩ 〜数10kΩ 程度であれば,特に問題はなく,プルアップ抵抗として機能します。

それは,CMOS のデジタル IC は入力抵抗が非常に高い(メグΩ 単位)からです。

入力抵抗が高いからと言って,R の抵抗値をそれに近い値か,それを超える高抵抗値にすると,R で電圧降下が発生して,プルアップの意味がなくなってしまいます。

では,R の抵抗値はどれくらいがいいのでしょう…?

一般的によく 10kΩ くらいが丁度よいと言われます。抵抗値が低いと,流れる電流値が高くなって消費電力が上がってしまいますし,抵抗値が高いと,ノイズを拾いやすくなったり,反応速度が遅くなったり,上記のような電圧降下問題もあります。

私の場合は,概ね,10kΩ を使用し,反応速度が気になる部分はそれよりも低くしたりしています。

まとめ

  • プルアップ抵抗は,入力がオープン状態など,電圧が不安定な状態を,H レベルに引き上げるために使用する。特に CMOS デバイスは入力をオープンにしてはいけない。
  • 入力オープンな状態は H レベルに固定され,この状態で,入力を H レベル,Lレベルにするとそれぞれそのまま H レベル,L レベルになる。

 

以上,スイッチ入力とプルアップ抵抗について書いてみました。

次回は,デジタル IC の論理ゲートに関して,書いてみたいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA