ワンボードマイ コンを使用した学生実験

NDC 420.72, 549.92
ワンボードマイコンを使用した学生実験
一IV割込みの応用と教育一
守*岸本俊祐**
岡 野
(昭和55年4月30日受理)
An Application of Microcomputer to Experiments for Students
一 IV Applications and Training of ”lnterrupt” 一
Tadashi OKADA and Shunsuke KisHiMoTo
(Received April 30, 1980)
賦丘lterrupt’, is one of the most important mode of the面croprocessor operation. It is used for forcing the CPU to
start a peripheral service routine immediately. ln this report, the experiments which are useful for the students to
Iearn the interrupt mode and microprocessor operation are described.
The three themes of students’ experiments in applied physics and one theme in electric engineering are improved
and developed by using the interrupt service.
験,割込みを教育するための実験を,上の二つのレベルの
1.ま え が き
実験テーマに導入してきた。本報は,色々なところに発表
マイクロコンピュータ(マイコン)の普及は著しく,産
した内容を,割込みの応用・教育実験として統一的にまと
業用の分野でも,分散処理システムからハードウェア部品
めたものである。
まで幅広く使われているD。このため,工学系の学生がマ
2.マイコンの割込み動作
イコンに接する機会がふえているので,我々はこれらの学
生に,マイコンに関する基礎的知見を与えるための学生実
計測・制御システム等にマイコンを応用する場合,効率
験を開発してきた2)一’4)。
よくデータを授受する必要が生じる。入出力機器を選択
マイコン.を利用する場合,大型コンピュータのように単
し,データ転送を行なう際に割込み機構を利用すれば,
にプログラムが組めるだけでは十分でなく,ハードウェ
CPUと多数の入出力機器を同時に動作させうる6)。
ア・ソフトウェア両者の知識が必要である。しかし,両方
マイコンにおける割込みは,機械命令の処理終了ごとに
とも理解するということはむつかしく,これを解消する一
ハードウェア的に割込み要求信号が検出され,受付けるか
つの方法として,より一般的な共通専門実験(応用物理実
否かを調べる。割込みを受付けると,割込み処理を実行す
験)と,専門実験(電気工学実験)という二つのレベルで
るが,申断した箇所にもどれるようプnグラムカウンタ等
マイコンに接する機会を与え,段階的に理解させる方法を
の退避を,ハードウェアとソフトウェアの分担のもとに行
なう。また,割込み要因解析ができるような機構があり,
とっている5)。
マイコンの動作のなかで,割込みは,計測.・制御への応
ベクトルアドレス発生またはデージィチェイン方式により
用をはじめ,重要な概念であるが),初心者にとって理解
特定の割込みルーチンへ分岐する。
しにくいものの一一つである。そこで,割込みを応用した実
最近発表される汎用の8ビット系CPUでは,割込みの機
能は強化されており,割込み機器がのせるデータとCPU内
*電気工学科
部のレジスタの値で任意のアドレスに分岐できたり(Z一
練応用物理
9
津山高専紀要第18号(1980)
80)7),高速に割込み処理ができるよう条件コードとプロ
この方法で,100μ秒の分解能をもつストップウオッチ
グラムカウンタのみを退避して分岐できるピンを独立にも
を実現し,割込みによって計数の開始・停止を制御する。
うけたり(MC6809)8)している。
Fig・1に音速を測定する装置を示すL2)。マイコンは,スピ
本報で使用したマイコンは,二二までと同様CPUに8080
ーカ駆動信号を出力すると同時に,100μ秒の時間きざみ
Aを使用したもので,割込みとしてはマスク可能な最も基
で計数を開始する。スピーカから出た音は,ビニール管を
本的な機能を持つものである。CPUが割込みを受付ける
伝播してマイ.クに到達し,その瞬間に発生した割込み信号
と,ステータス情報のINTA=”1”のときに,データバス
により計数を停止する。そして,それまでの計数値を処理
に外部機器よりRST命令またはCALL命令をのせればよ
し,音の伝播時間を100μ秒の精度で求め,音速を測定す
い9)。
るものである。
通常1バイトで特定のアドレスへ分岐できるRST命令が
3−2.振り振り子の振動周期測定
使用される。RST命令では,割込みベクトル発生回路を付
3−1,と同様の考え方で,0.01秒目分解能を持ったストッ
加することで,8レベルまでの分岐が可能である。割込み
プウオッチを実現し,涙り振り子の振動周期が測定でき
ベクトル発生回路は,割込み要因に従って特定な3ビット
る12)。Fig・2のように,涙り振り子の円環にはったアルミ
の組み合わせ(23 ・= 8レベル)によるベクトルアドレス.を
箔からの反射光をホトトランジスタで受けて,その光電信
発生させるものである。これは,専用のICであるPICU
号で割込みをかけ,ストップウオッチの計数の開始・停止
(P「io「ity lnterruPt Contro1 Unit)8214を使えば,自動的
を行なわせる。周期の測定であるから,1回目の割込みで
に8レベルまでのアドレスを発生できるし10),1∼3レベ
計数を開始し,2回目の割込みは半周期目なので無視し,
ルの割込みしか利用しない場合は,データバスをプルアッ
3回目で計数を停止すればよい。
プし,2∼3のゲートICを組み合わせることでも可能で
ある11)。
r一噸一
TK−80
ノ
戦報の実験では,マイコンとしては日本電気製TK−SO”)
を使用しているが,このマイコンは基本的に割込みが使用
o
者に開放されていない。そこで,割込みベクトル発生は,
AMP
1cpu
18080A
応用物理実験では簡単に行なえる後者の方法を,電気工学
ilNT
融8
実験では多重レベルの割込みを実験するため前者の方法を
Pendutum 1 一e l
使用して,割込みが可能なように改造している。
t
s tDATA
lBUS
L一一一
3.割込みの応用一応用物理実験一
3−1.音速測定
Fig.2 Block diagram for measuring the period
of vibration of torsiQnal pendulu血
水晶発振によるクロック信号で動作しているマイコン
の,1命令の実行時間は正確である。そこで,適当な機械
命令を組み合わせることにより,数μ秒の精度を持った多
EF1,3−2ともに測定結果や教育効果などは,文献(12)
機能なストップウオッチをマイコンで実現できる。
に詳しく述べてあるので,ここでは触れない。
一一一 TK−80 一一一!
3−3.乱数の発生
巳
マイコンのレジスタの一つを,10進1桁のカウンタとし
i N . MnyL Tube
囎 i’iS!!!i即『き
蒲[,1,,2
幽
幽P。1巳n冒扁l
て連続的にカウントアップするようにしておく。この繰り
返し周期に比べて,検出の間隔が十分長い放射線パルスで
割込みをかけ,そのたびにカウンタの値を記憶させるよう
にすると,任意桁数の一様乱数が容易に得られる13)。
このためには,基本的にFig.2のホトトランジスタと同
インタフェースを,ガイガー・ミュラー計数管と同インタ
Bus onver
フェースに交換するだけでよい。自然放射能のような頻度
8228
の低い野阜を用いると,放射線が検出されるたびに,乱数
DATA B US 一e/“’lis
,
がゆっくり,時間的にランダムに得られる。これを用いる
Fig.1 Block diagram for measuring the sound
と,放射性元素の自然崩壊i4や,ランダムウォーク15)のよ
propagation velocity
うなシミュレーションを,リアルタイムでゆっくり試行で
一10一
ワンボードマイコンを使用した学生実験 岡田・岸本
ミュレーション”4’をすませた学生が,次の週に行なうも
き,CRT等に表示すると現象の進行状態を視覚的に追うこ
ので,割込み動作の教育とともに,簡単なプログラム演習
とができる。
ができるようになっている。
4.割込みの教育一電気工学実験一
全体の構成をFig・3に示すが, T K一一80をベースに各種
電気工学科4年次に,割込みの概念を修得し,それを通
回路を追加している。割込み制御は,先に述べた専用IC
してマイコンの基本動作を理解させるための実験を開発し
8214を使い,4レベルの割込み処理が可能なようにした。
た16)。この実験テーマは,先に発表した{{AD変換器のシ
そのうち3レベルは3個のキースイッチから,他の1レベ
一一 @TK−80 一一 一1
RSTユ
CPU
Interrupt
Controlter
8080AINT
十
8214 + 8212
8228
Key SW
Tmer
よ
、RST2
3
lnter
−face
而
よ
e−za. RST3
.L Xch
za RST4
o ’o
Ych
DATA BUS
PPI
8255
2
8
Duat−stope
rntegratton
ADC
Temperature
。p
ヲ
Sensor
DAC
DAC
8
Fig.3 Block diagram of experiment systen for training of interrupt
ルは約5秒おきにタイマから割込みがかかる。また,割込
実験では,X−yrtシロスコープ上に文字を描かせ,命令
みの動作状態が視覚的に理解できるように,X−Yオシロス
の変更により割込みのかかり方の違いを文字の変化で理解
コープを表示装置に使い,このためのDA変換器2チャン
させたり,自分のイニシャル(アルファベット2文字)を
ネル分をもうけた。その他に,タイマ割込みにより室温を
描くプログラム演習を通してマイコンの動作を理解させる
測定しLED上に表示できるよう,二重積分形AD変換器と
ようにしている。基本動作や取り扱いを一応理解してから
温度センサをもうけた。これらの追加回路は,Fig・4に示
の実験なので,各自が自分で課題を仕上げなければならな
すように,TK−80の空き部分とその上の小さな基板におさ
いこともあって,マイコンの理解が深まる実験となった。
め,ワンボードの取り扱いの容易さをそこなわないように
5.む
した。
す
び
計測・制御などの分野にマイコンを利用する場合重要な
割込みを,学生実験に応用したり,教育するテーマについ
て述べた。
応用物理実験のテーマでは,TK−80にゲートICによる
簡単な割込みベクトル発生回路を付加し,電子式ストップ
ウオッチの機能を持たせ時間測定に応用したり,乱数を発
生させシミュレーション実験に応用した。
電気工学実験では,割込みの概念を視覚的に理解させ,
あわせて,プログラム演習を通してマイコンの動作を理解
させるテーマとした。
マイコンを十分使いこなすためには,ハードウェア・ソ
フトウェア両者の知識が必要である。本縄を含め,一連の
Fig.4 Appearance of additional circuit
ワンボードマイコンを使用した学生実験で,マイコンの応
一11一
津山高専紀要第18号(1980)
用例と有用性の認識,マイコンの操作やプログラミングを
通しての基本動作の理解などを目的に行なってきた。
その結果,マイコンに対する学生の関心度は高く,他の
実験テーマに比べて興味を示す者が多く,体験的にマイコ
ンに関する基礎的知見を与えるという所期の目的は達した
4)岡田・岸本,津山高専紀要,17(1979),25・
5)岡田・岸本,信学技報,ET78−8(ユ978−9),21・
6)相磯,計測と制御,17−5(昭53−5),15.
7 ) SHARP, Microcomputer Z80 Handbook [Part 1], (19
79), 55, Electronics Digest Co!npany.
8 ) MOTOROLA, Semiconductors Advance lnformation
MC6809, ADI−804 (i979).
ものと思う。
しかし,これらの実験のみでマイコンのすべての動作の
9)日本電気,μ COM一一80ユーザーズ・マニアル,(1976−
7), 19・
理解が十分にできるものとはいいがたい点がある。特に,
10)日本電気,バイポーラ集積回路μPB8214C優先割込み
ハードウェアの動作が理解しにくいようなので,今後とも
コントローラ,工N−5366(1977−12).
これら理解の困難な点を重点的に取り上げた実験テーマ
を,新たに作っていきたいと思う。
12)岸本・岡田,日本物理教育学会誌,27−2(1979),112.
13)岸本・平松,第47回日本統計学会講演報告集,(ユ979−
文 献
7), 109.
1)正田ほか,産業用マイクロコンt“ユーータの基礎と応
用, (昭54),67,オーム社.
2)岸本・岡田,津:山高専紀要,16(1978),1.
3)岸本・岡田,津山高専紀要,17(1979),1・
11)松本,私だけのマイコン設計&製作,(昭53),154,
CQ出版.
14)岸本・岡田,第26回応用物理学関係連合講演予稿集,
(昭54−3), 610.
15)岸本・岡田,応用物理教育研究会会報,6,掲載予定.
16)岡田・岸本,信学技報,ET79−11(1980−2),35.
一12一