インターバルタイマの分周比とコンペアレジスタ設定値の計算

問題のタイマ仕様に基づいて計算します: 1. タイマクロック周波数と周期 : システムクロック周波数は $32 ext{ MHz}$ であり、タイマクロックはこれを 32分周したものなので: $$f_{timer} = rac{32 ext{ MHz}}{32} = 1 ext{ MHz} = 10^6 ext{ Hz}$$ したがって、タイマクロックの1周期 $T_{timer}$ は: $$T_{timer} = rac{1}{10^6 ext{ Hz}} = 1 ext{ マイクロ秒} = 0.001 ext{ ミリ秒}$$ 2. 割込み周期20ミリ秒に必要なカウント数 : 20ミリ秒($= 20,000$ マイクロ秒)の時間を計測するために必要なタイマクロックのカウント数は: $$ rac{20,000 ext{ マイクロ秒}}{1 ext{ マイクロ秒}} = 20,000 ext{ カウント}$$ 3. コンペアレジスタ設定値 : カウンタは初期値0からスタートし、毎クロックインクリメントされてコンペアレジスタ値 $N$ に達した時点で割込みが発生し0にリセットされます。カウント周期を 20,000クロックにするための設定値 $N$ は $20,000 - 1 = 19,999$ となります。 したがって、設定する値は 19,999 となり、正解は エ です。 ア: 1は、タイマクロックの最小周期(1マイクロ秒)に対応する極小値です。 イ: 19は、単位をミリ秒とマイクロ秒で取り違えた誤った値です。 ウ: 1,999は、2ミリ秒周期となる値です。

表のインターバルタイマを用いて約20ミリ秒ごとにタイマ割込みを発生させたいとき,16ビットタイマコンペアレジスタに設定する値は10進数で幾つか。ここで,システムクロックは32MHzとする。

問題画像
出典平成31年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問15
ア
1
イ
19
ウ
1,999
エ
19,999