タイマー2の使い方



【概要】

 タイマ2の基本のカウンタは8ビットのカウンタで、入力は内部クロックだけです。
しかし基本のカウンタ以外に、4ビットのプリスケーラが前段に、出力側には4ビット
のポストスケーラが付いています。そのため、プリスケーラ、ポストスケーラをすべて
フルに使うと16ビットカウンタと同じになって、16ビットの周期で割込みを発生させ
ることが出来ます。
 主な用途としては、コンペア機能と組み合わせてPWM用の周期カウンタやSSP
シリアル通信用のボーレート用クロックジェネレータとして使われます。
従って、タイマ2は大部分がCCPと一緒に使われますので、詳細の使い方は、CCP
のページで説明します。


【タイマー2の構成】

 タイマ2の内部構成は下図のようになっており、個々の制御は専用のT2CONレジ
スタで行います 
 基本的な動作としては、内部クロックを入力としてTMR2でカウントし、オーバー
フローしたら割込みを発生するという動作をします。
このときプリスケーラを入力の分周用に使うことができますし、ポストスケーラを
オーバーフローの回数カウント用に使い、一定の回数オーバーフローが発生したら
割込みを発生するというように使います。 
T2CONレジスタに書込むと同時に、プリスケーラ、ポストスケーラはゼロクリアされ
ますが、TMR2はクリアされません。TMR2は、リセットとコンパレータ一致でのみ
クリアされます。



【タイマー2の機能】

 タイマ2は、前項のような単純なカウント動作以外に、コンパレータ機能が使え
ます。コンパレータでは、あらかじめPR2レジスタにセットされた値と、TMR2カウンタ
との値を常時比較しており、同じになったらコンパレータから一致信号が出力されて、
TMR2カウンタをゼロクリアすると同時にオーバーフロー信号として出力します。
この機能の応用で下記のような動作をさせることが可能となります。

(1) 定周期インターバルタイマ

 PR2レジスタで指定した任意の一定周期の信号を、タイマ2の出力として取り
出すことが可能となります。
このタイマ2による周期信号の特徴は、タイマ0や1と異なり、割り込みの都度
TMR2の再設定をしなくても、自動的に一定周期で割り込みを発生できるところ
にあります。つまり、正確な一定周期のインターバルタイマとすることが可能に
なります。


タイマ2はキャプチャ/コンペア/PWM機能と組み合わせて使われることが大部分
ですので、詳細はCCPの項で説明します。

【T2CONレジスタの使い方】

 タイマ2の制御用のT2CONレジスタの詳細は下図のようになっています。
下図で、TMR2ONは、当然ですが使うときには必ずONにする必要があります。
あとは、プリスケーラとポストスケーラのスケール値の指定だけですから、難しい
ことは無いでしょう。
カウント値はTMR2レジスタに直接読み書きすることが出来ます。

T2CONレジスタの構成






  目次ページに戻る