2016年03月31日 | 公開。 |
前のページでは抵抗分圧方式のレベル変換回路を使って、AQM1248Aを5V動作のArduinoに接続する方法を説明しましたが、今度は、レベル変換用のICを使って接続する方法を説明します。
74AHC244は、図30に示すように、8つの3ステートバッファが内蔵されており、4つごとに負論理のイネーブル信号(1OEと2OE)で制御されています。
1OE(1番ピン)の入力がLの時は、1A1(2番ピン)、1A2(4番ピン)、1A3(6番ピン)、1A4(8番ピン)に入力された信号が、それぞれ1Y1(18番ピン)、1Y2(16番ピン)、1Y3(14番ピン)、1Y4(12番ピン)にそれぞれ出力されます。1OEの入力がHの時は、1Y1、1Y2、1Y3、1Y4の全ての出力がハイインピーダンス(電源側にもGND側にもつながっていない状態)になります。
残りの4つの3ステートバッファについても同様に、2OE(19番ピン)のイネーブル信号で制御されます。
TEXAS INSTRUMENTS社のデータシート"SNx4AHC244 Octal Buffers/Drivers With 3-State Outputs"より転載
20ピンのICで、DIPパッケージ品も存在します。DIP品のピン接続を図31に示します。
TEXAS INSTRUMENTS社のデータシート"SNx4AHC244 Octal Buffers/Drivers With 3-State Outputs"より転載
この様に、出力をハイインピーダンスにできる3ステートバッファが入った74AHC244ですが、今回は2つのイネーブルピン(1OEと2OE)の入力をLに固定し、ただのバッファ(Lを入力したらLを出力し、Hを入力したらHを出力する論理回路)として使います。
74AHCシリーズのCMOS ICは、電源電圧より高い入力電圧を印加しても、壊れることなく正常に動作しますから、5V→3.3Vのレベル変換に使えます。(一方で、アマチュアの電子工作に最も広く使われている74HCシリーズは、電源電圧より高い電圧を入力端子に印加すると、ラッチアップと呼ばれる、IC内部に異常な大電流が流れる現象が起こり、その電流により故障する事があります)
それでは、74AHC244を使って5V動作のArduinoとAQM1248Aを接続する方法を説明しましょう。
具体的な配線の方法を図32(ハードウェアSPI)と図33(ソフトウェアSPI)に示します。また、図32および図33の配線を行った試作回路の写真を、それぞれ写真16と写真17に示します。
Arduino Unoの場合は、11番端子とSPI-4端子、および13番端子とSPI-3端子がArduino内部で接続されているので、図32の結線と電気的に等価。
図32の配線(ハードウェアSPI)を行った場合、動作試験のスケッチは3ページのリスト1になります。
図33の配線(ソフトウェアSPI)を行った場合、動作試験のスケッチは3ページのリスト2になります。
これら2つのスケッチは、Arduino IDE 1.0.X、1.6.Xおよび1.7.Xで動作します。(Arduino IDE 1.0.6、1.6.7および1.7.8とArduino Uno、Arduino LeonardoおよびArduino Mega2560の組み合わせ、計9通りで動作確認済み)
なお、DIPパッケージの74AHC244としてTI(TEXAS INSTRUMENTS)のSN74AHC244Nを使いました。このICは秋月電子では取り扱っていませんが、マルツで入手できます。
表面実装品でいいなら、秋月電子で手に入るHD74LVC541AやHD74LV541AやTC74VHC541FTも使えるはずです。(ただしこれらのICについては、当方で動作試験をしていませんので、回路を作る人は、ご自分の責任でお願いします)
HD74LVC541A、HD74LV541A、およびTC74VHC541FTは、いずれも機能やピン配置が共通のICです。これらのICのピン接続を図34に示します。
RENESAS社のデータシート"HD74LVC541A Octal Buffers/Line Drivers with 3-state Outputs" (RJJ03D0251-0600Z Rev.6)より転載。
3ステートバッファが8個入っていますが、これらがG1(1番ピン)とG2(19番ピン)の負論理入力のANDを取った信号で制御されています。つまり、G1とG2の両方がLなら、Y1~Y8にはA1~A8の信号がそのまま出てきますが、G1とG2の内どちらか一方でもHになると、Y1~Y8はハイインピーダンスになります。
今回は、ただのバッファとして使いたいので、G1とG2を共にLに固定する事にします。
これらのICを使って5V動作のArduinoにAQM1248Aを接続する場合は、図35(ハードウェアSPI)または図36(ソフトウェアSPI)にしたがって配線を行ってください。
Arduino Unoの場合は、11番端子とSPI-4端子、および13番端子とSPI-3端子がArduino内部で接続されているので、図35の結線と電気的に等価。
図35の配線(ハードウェアSPI)を行った場合、動作試験のスケッチは3ページのリスト1になります。
図36の配線(ソフトウェアSPI)を行った場合、動作試験のスケッチは3ページのリスト2になります。
これら2つのスケッチは、Arduino IDE 1.0.X、1.6.Xおよび1.7.Xで動作します。(Arduino IDE 1.0.6、1.6.7および1.7.8とArduino Uno、Arduino LeonardoおよびArduino Mega2560の組み合わせ、計9通りで動作確認済み。ただしスケッチの動作確認は他のレベル変換回路でしたものの、図35や図36のレベル変換回路の動作試験はやっていないので注意)
次のページでは、74HC4050を使ったレベル変換回路の話をします。
商品名 | 122X32モノクログラフィックLCDシールド | |
税抜き小売価格 | 3333円 | |
販売店 | スイッチサイエンス | |
サポートページ | 122X32モノクログラフィックLCDシールドサポートページ |
商品名 | GLCD学習シールドキット | |
税抜き小売価格 | 1410円 | |
販売店 | スイッチサイエンス | |
サポートページ | GLCD学習シールドキットサポートページ |