平成30年度 春期 午前Ⅱ 問13
ハードウェア
マトリクススイッチの問題
図に示すマトリクススイッチにおいて,キーセンスを行うときのポートの機能と動作の組合せとして,適切なものはどれか。
マトリクススイッチの回路:
- ポート A から横方向の信号線 4 本が出て,右端でプルアップ抵抗群を経て電源につながる。
- 縦方向の信号線 4 本が横方向の信号線と交差し,16 個の交点それぞれにスイッチがある(拡大図:スイッチが横線と縦線の間をつなぐ)。
- 縦方向の信号線 4 本は,それぞれダイオード(アノードが交点側,カソードがポート B 側)を経てポート B につながる。
選択肢は原典ではポート A,ポート B,出力ポートの動作の表。
- アポート A:出力ポート / ポート B:入力ポート / 出力ポートの動作:信号線を 1 本ずつ LOW レベルにする。
- イポート A:出力ポート / ポート B:入力ポート / 出力ポートの動作:全ての信号線を同時に LOW レベルにする。
- ウポート A:入力ポート / ポート B:出力ポート / 出力ポートの動作:信号線を 1 本ずつ LOW レベルにする。
- エポート A:入力ポート / ポート B:出力ポート / 出力ポートの動作:全ての信号線を同時に LOW レベルにする。
答えと解説を見る
✓ これが正解ウポート A:入力ポート / ポート B:出力ポート / 出力ポートの動作:信号線を 1 本ずつ LOW レベルにする。
解説
ダイオードの向きから、B を出力にして1本ずつ LOW にし A で読みます。
キーマトリクスでは、一方の信号線群を出力にして1本ずつ順に LOW にし、もう一方の信号線群を入力にして読み取ることで、押されたスイッチの位置を特定します。この回路では、縦の信号線のダイオードはアノードが交点側、カソードがポート B 側を向いているので、電流は交点からポート B の向きにだけ流れます。ポート B を出力にして縦線の1本を LOW にすると、その縦線上で押されているスイッチを通じて、プルアップされた横線から電流が流れ込み、その横線が LOW になります。ポート A を入力にしてどの横線が LOW かを読めば、押されたスイッチの行と列が分かります。ダイオードの向きで出力側を決め、1本ずつ走査する、の二点で選べます。
ほかの選択肢はなぜ違うのか
- アポート A:出力ポート / ポート B:…:ポート A を出力にして横線を LOW にしても、ダイオードはポート B 側から交点側へは電流を流さない向きなので、ポート B の入力は押されたスイッチがあっても変化しません。ポート B 側にはプルアップも無く、読み取りが成り立ちません。
- イポート A:出力ポート / ポート B:…:ポートの役割がダイオードの向きと合わないうえ、全ての信号線を同時に LOW にすると、どの行のスイッチが押されたのかを区別できません。走査では1本ずつ LOW にして、どの線を調べているかを決めておく必要があります。
- エポート A:入力ポート / ポート B:…:ポートの役割は合っていますが、全ての縦線を同時に LOW にすると、横線が LOW になったときに、どの列のスイッチが押されたのかが分かりません。何かが押されたことは分かっても、キーの位置を特定するには1本ずつ LOW にします。
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問13
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)