連載
» 2007年09月19日 00時00分 UPDATE

H8で学ぶマイコン開発入門(12):スイッチとロータリエンコーダの入力を処理する (1/4)

H8マイコンに対して信号を入力するタイプの機器として、スイッチ・ロータリエンコーダの構造と制御方法を解説する

[宮崎 雅史 ソフィアシステムズ,@IT MONOist]

 これまでの連載では、LEDの点灯、LCDの表示、各種モータの制御など、主にH8マイコンから制御信号を出力する機器について紹介してきました。今回はH8マイコンに対して信号を入力するタイプの機器について、サンプルプログラムと併せて紹介していきます。

スイッチの用途

 入力系として、まずスイッチを取り上げます。スイッチの種類はいろいろありますが、

  • 回路の接続を切り替える
  • 入力端子へ入力する電圧のHigh/Lowを切り替える

といった用途に使われます。

 「回路の接続を切り替える」とは、例えばある機器1と機器2がボード上にあり、マイコンのある信号端子を共有しているときに、その信号端子をどちらの機器につないで使うかを選択するためにスイッチを使う、という用途です(図1)。

 本連載で使用しているターゲットボード(詳細は第6回を参照)でも少々特殊な用途として、

RXD信号を、H8/3048F-ONEの内蔵フラッシュメモリにプログラムを書き込むためのシリアル通信用コネクタに接続するか、H8/3048F-ONEのオンチップエミュレータをデバッガと接続するためのコネクタに接続するかを切り替える

で使用しています。この際、ボードに電源を入れる前にあらかじめスイッチを設定することで使いたい機能を選択します。

 また、機器の切り替えではありませんが、H8/3048F-ONEの動作モードの切り替えにもスイッチが使われています。H8/3048F-ONEには0〜7のモードがあり、メモリやポートの使用方法が異なります。そのモードを決定するための端子が設けられており、電源の投入時に入力する信号のHigh/Lowで動作モードが決まります。動作モードの決定には、DIPスイッチが使用されています。

スイッチの用途「回路の接続を切り替える」 図1 スイッチの用途「回路の接続を切り替える」

 もう1つの使い方の例として挙げた「入力端子へ入力する電圧のHigh/Lowを切り替える」ですが、こちらはある機器が何らかのアクションを起こすきっかけとして使われます。

 例えばこれまでの連載を振り返ってみると、ステッピングモータやDCモータ、サーボモータの回転方向や速度を切り替えたいといったときに、H8マイコンのスイッチがつながれた端子がLowだったら時計回り、Highだったら反時計回りといった使い方ができます。

スイッチの例

 本連載のターゲットボードにはトグルスイッチ、DIPスイッチ、プッシュスイッチ、スライドスイッチが載っています。このうちDIPスイッチとスライドスイッチはH8マイコンの動作モードの設定など、機能の切り替えに関する使い方をしています。

ターゲットボード上のスイッチ 写真 ターゲットボード上のスイッチ

 プッシュスイッチはターゲットボードのリセットスイッチとして使用されており、普段はスイッチがOFFの状態でリセット回路にHighの電圧が加えられています。そして、スイッチを押している間このリセット回路にLowの電圧が加えられシステムにリセットが掛かります。ボタンから手を離すとバネの力によりスイッチがOFFとなり、システムが再び動き始めます。

 最後のトグルスイッチがH8/3048F-ONEのポート7に接続されており、「入力端子へ入力する電圧のHigh/Lowを切り替える」実験を行うためのスイッチとして使用されています。

       1|2|3|4 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.