タイマー2/4/6概要

Timersxのxはタイマー番号(2,4,6のいずれか)を示す。
PIC18F46K22ではTimer2/4/6が同様に使用できる。
PIC18F14K50ではTimer2が同様に使用できる。
カウントレジスタ:8bitアップカウント
クロック源:FOSC/4のみ
プリスケーラ: 1 4 16
ポストスケーラ: 1~16
カウント値とPRxの値が一致した場合、カウンタがクリアされ割り込み発生が可能
OpenTimerxはTCONxの設定を行う。なおTimerxは拡張周辺機器なので割り込みを有効にするためにINTCONのPEIEを1にしなければならない。

クロックよりPRxレジスタの設定値の計算例

 JavascriptによりPRxレジスタの値により任意の周波数で周期割り込みを発生させる場合の設定例を計算する
入力 CLK=MHz(FOSC/4)
割り込み 周波数(F)=Hz

プリスケーラ(p) 1 4 16
目標周波数
f=1/t
目標分周比
d=CLK/f
分周比(dp=d/p)
ポストスケーラ
PRx
出力周波数
誤差(%)

タイマー設定例(入力条件よりXC8向けソースを表示)

条件入力

Timer=
CLK=MHz(FOSC/4)
PRx=
プリスケーラ ポストスケーラ

XC8 Cコンパイラ向けのサンプルソース