【タイマー2】
タイマー2は基本は8ビットのカウンタですが、プリスケーラとポストスケーラ両方に
4ビットのカウンタが追加できますので、合計16ビットのカウンタと同じ動作をします。
タイマー2の構成は下図のようになっています。ポイントはコンパレータが付属して
いることです。
従来同様タイマー2は単独で使うことは少なく、主にCCPのデューティ制御用の
カウンタとして使います。
また、SSPモジュールのシリアル通信用クロックとしても使われます。
プリスケーラ、ポストスケーラは下記条件でクリアされます。
・TMR2レジスタへの書込み
・T2CONレジスタへの書込み
・各種リセット
【T2CONレジスタ】
タイマ2の制御用には下図のT2CONレジスタが使われます。
【タイマー2用C関数】
CCS社のPCHで用意されているタイマー2用の組み込み関数には
下表のようなものがあります。
組込み関数書式 内容 setup_timer_2(mode) タイマー2の初期設定を行う。
modeの値は下記を使用する。
複数の設定はORで行う。
T2_DISABLED
T2_DIV_BY_1
T2_DIV_BY_4
T2_DIV_BY_16
《例》
setup_timer_2(T2_DISABLED);
setup_timer_2(T2_DIV_BY_4);
get_timer2() 現在のTMR2の内容を返す。
8ビットなのでintで扱えば良い。
《例》 while (get_timer2( ) != 0)set_timer2(value) TMR2レジスタにvalueの値をセットする
《例》
if (get_timer2( )=100)
set_timer2(0);