マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初心者の方からよく質問される「汎用I/Oの構造と使い方?」についてです。
素朴な疑問から技術トラブルなどマイコンユーザーのあらゆる悩みに対し、マイコンメーカーのエンジニアが回答していく連載「Q&Aで学ぶマイコン講座」。
今回は、初級者から多く寄せられる質問です。
汎用I/O端子には周辺機能やアナログの入出力機能などを兼ねた兼用機能が割り振られています。簡単なブロック図は、マニュアルやデータシートなどに記載されていますが、入力バッファと出力バッファの部分までで、さらにその内部への経路や構造は詳しく記載されていません。実際の内部構造はどうなっているのでしょうか?
図1に一般的な汎用I/Oのブロック図を示します。実際の汎用I/Oではアナログ回路の電源経路や5V耐圧端子の保護回路の経路がありますので、製品ごとに、ブロック図の細部は異なってきます。
図1の上部は入力回路で下部は出力回路です。端子の直近に保護回路があり、プルアップ/プルダウン抵抗は入出力で共通です。入力信号は入ってすぐにデジタル信号とアナログ信号に分かれます。アナログ信号は入力電圧値が変わらないように直接A-Dコンバーターやオペアンプ(Operational amplifier)などのアナログ周辺回路へ入ります。デジタル信号は、さらにCPUへ行く信号と周辺機能へ行く信号に分かれます。多くの場合は、いったんレジスタなどの回路でラッチされて、処理されます。
出力信号も、デジタル信号とアナログ信号で経路が異なります。デジタル信号はCPUから来る信号と周辺機能から来る信号で経路が異なりますが、出力制御回路を経て、出力バッファから出力されます。アナログの出力信号はデジタル回路を経由せずに直接端子につながりますので、出力電圧が変わらずそのまま出力されます。
それぞれの回路は、電源を含め独立していて、相互に干渉しないように作られているため、多くの機能を1つの端子に担わせても問題は発生しません。
Copyright © ITmedia, Inc. All Rights Reserved.