pp.476-477
今度はCTCモードにして、コンペアマッチ時に出力をトグルする。 CTCモードであるため、コンペアマッチした次のタイミングでカウント値が0に戻る。
ここでは、内部クロックを1024分周し、コンペア値を2にした。
パルス幅: (2+1) * 1/(8 MHz/1024) = 384 us
周波数: 1/(384 us * 2) ≒ 1.3 kHz
SBI DDRD, PD6 ; PD6 (OC0A)のIOをOUTにする。 LDI R20, 2 ; コンペア値Aを設定。 OUT OCR0A, R20 LDI R20, (1 << COM0A0) | (1 << WGM01); コンペアマッチA時にOC0A (PD6)をトグル。CTCモード。 OUT TCCR0A, R20 LDI R20, (1 << CS02) | (1 << CS00) ; 内部クロックを1024分周してカウント。 OUT TCCR0B, R20