平成13年2月9日

2000年度ISテーマ
マイクロマウスの開発研究
〜マイクロマウス2000に出場して〜

情報工学科 r00h0390 不死川魔沙王

7.各部の詳細

CPU部

ACPUボード(拡張部)

CPUボードからAKI80を外したところ

左の40ピンのICが8255

 

拡張I/Oポート8255について
 今回のマイクロマウスでは、モータ制御用に8本の出力端子(PIO1ポートが必要)・センサ制御用に10本の入力端子(PIO2ポートが必要)が必要となる。AKI80のPIOは2ポートしかないため、PIOを増設する必要がある。そこで8255を用いて増設を行った。
8255は、8ビットパラレルデータ転送専用LSIである。8ビットPIOを3ポート持っており、各々のポートを入出力ポートにプログラムできる。MPU(マイクロプロセッサ)と接続することにより、PA(ポートA),PB(ポートB),PC(ポートC),CWR(コントロールワードレジスタ)とMPU間のデータ転送ができる。

8255概念図

CWRの内容によって、各ポートの入出力設定を行うことができる。今回はPA・PCを入力ポート、PBを出力ポートとした。
8255のポートセレクト信号(A1とA0で制御)と選択されるポートの関係は以下のとおりである。

ポートセレクト信号

選択されるポート

A1 A0
0 0 PA
0 1 PB
1 0 PC
1 1 CWR


 

8255とCPUボード本体部の結合方法

8255とCPUボードの接続図

アドレスデコーダには74138を使用した。

アドレスデコーダ接続図

74138では、G1='H'かつG2A=G2B='L'のときだけ出力が'L'となる(有効となる)。ゆえに、MPUアドレスバスと選択ポートの関係は以下のようになる。

MPUアドレスバス

ポート番号(16進数)

8255内部選択ポート

A7〜A0
0 0 1 0 0 0 0 0 20h PA
0 0 1 0 0 0 0 0 21h PB
0 0 1 0 0 0 0 0 22h PC
0 0 1 0 0 0 0 0 23h CWR


8255入出力ポートの割り振り

入出力ポート 使用箇所
PA0〜PA7 横センサからの入力(下図参照)
PB0〜PB7 モータドライブ回路への出力
PC0,PC7 前センサからの入力(下図参照)

センサ部フォトリフレクタの配置(上から見た場合。PCが前センサ、PAが横センサを担当)

 

PA7 PA6 PA5 PA4
PC7
PC0




PA3 PA2 PA1 PA0 

続きを読む