![見出し画像](https://assets.st-note.com/production/uploads/images/129435584/rectangle_large_type_2_6fb924678f58d6b3262372aeaed0526e.jpeg?width=800)
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 モードとなっています。
![](https://assets.st-note.com/img/1706699185790-GrXK2XhECi.png?width=800)
カウント値 セットのところで、0CR0A = 195 を設定しています。
![](https://assets.st-note.com/img/1706330976830-Sa96pchC57.png?width=800)
TIMSK0 レジスタの設定をします。
![](https://assets.st-note.com/img/1706331004818-kSCfmf26UI.jpg?width=800)
CTC モードを使用するので、ビット1 のOCIE0A を1 にします。
ビット2 のOCIE0B もCTC モード用ですが、本レッスンでは使用しません。
<プログラム>
この記事が気に入ったらサポートをしてみませんか?