見出し画像

ATMEGAで学習しよう(レッスン5)

「8 ビットタイマ(CTC モード)長時間」


<目的>
・8 ビットタイマ(CTC モード)を使った長時間生成方法について学ぶ。

<動作概要>
・SW1 が押されたらLED1 を明0.5 秒暗3.5 秒で点灯させる。
(外部割り込み0)
・SW2 が押されたらLED2 を明0.5 秒暗3.5 秒で点灯させる。
(外部割り込み1)

<ポイント>
・0.1s を時間単位とし、その倍数で希望の時間を作る。

<レジスタ説明>

動作モードをレッスン3 のノーマルモードではなく、CTC モードにしています。
そのために、TCCR0A レジスタの1 ビット目(WGM01)、0 ビット目(WGM00)を設定します。
表を見ると、WGM02、WGM01、WGM00 が0,1,0 のときCTC モードとなっています。

カウント値 セットのところで、0CR0A = 195 を設定しています。

TIMSK0 レジスタの設定をします。

CTC モードを使用するので、ビット1 のOCIE0A を1 にします。
ビット2 のOCIE0B もCTC モード用ですが、本レッスンでは使用しません。


<プログラム>

ここから先は

4,306字 / 1ファイル
この記事のみ ¥ 100
期間限定 PayPay支払いすると抽選でお得に!

この記事が気に入ったらサポートをしてみませんか?