4.2 ITU(16ビットインテグレーテッドタイマユニット)



ITUはH8に搭載されているタイマユニットです.

  H8チップ内にはITUがCH0〜CH4の合計5チャンネル搭載されています.それぞれ単独で動作させることもできますし,互いに連動させて動作させることもできます.(本実験ではそれぞれ単独で動作させます)

ITUはチャンネルによって若干の違いはありますが,次のようなもので構成されています.
カウンタTCNT
タイマの中心となる16ビットのカウンタ.チャンネルごとに1本ずつあり,独立して動作できる.16ビットなのでH'FFFFまで数えたらH'0000に戻る.
レジスタGRA,GRB
何か動作を行うタイミングのカウント値を設定するレジスタ.
入出力ピンTIOCA,TIOCB
ITUで使用する入出力端子.信号を入力してカウンタで信号に含まれるパルスを数えたり,あるいは設定したタイミングでパルスを出力したりするために用いる.
基本的な働きは,
  1. カウンタ値ジェネラルレジスタ2本(GRA,GRB)にデータを書き込む
  2. 内部の16ビットカウンタがスタートし,カウント値TCNTが変化していく
  3. カウント値TCNTとジェネラルレジスタに書き込んだデータ(GRAあるいはGRB)が一致したときに何か動作を行う
というもので,カウンタがカウント値を変化させていく条件としては
  • 一定時間経過するごと(周期はCPUクロックを元にしてある程度設定できる)にカウントする
  • 入力信号がOFFからONへ(偽から真へ,0Vから5Vへ)変化するときなどにカウントする
などを選択でき,また,設定した値にカウント値が達したときの動作としては
  • 出力端子(TIOCA,TIOCBの2本がある)からの出力が変化する
  • カウンタTCNTがクリアされる
  • 割り込み要求を発生させる
などを設定できます.

ITUには7種類の動作モードがありますが,この実験ではPWMモードについて学習します.
動作の設定は,全チャネル共通の設定を書き込むコントロールレジスタと,各チャネルごとに設けられたコントロールレジスタそれぞれに制御コードを書き込むことで行います.



[山口研究室] <back | index | next >