AVR單片機定時/計數(shù)器學(xué)習筆記(二)
定時/計數(shù)器1(16位)有普通模式、CTC模式、快速PWM模式、相位修正PWM模式等工作模式。
2.CTC模式(需要用到OC1A、OC1B兩個引腳)
應(yīng)用:用于產(chǎn)生占空比為50%的方波信號
( N為分頻系數(shù) )
需要配置的寄存器:T/C1控制寄存器A(TCCR1A)、T/C1控制寄存器B(TCCR1B)、輸出比較寄存器1A(OCR1A)。
(1)TCCR1A的bit7、bit6用于設(shè)置OC1A腳的比較輸出模式,bit5、bit4用于設(shè)置OC1B腳的比較輸出模式。(此處我們都設(shè)為,比較匹配時OC1A、OC1B電平取反)
(2)TCCR1B的bit4、bit3和TCCR1A的bit1、bit0組合來設(shè)置波形產(chǎn)生模式。(此處我們設(shè)為模式4—CTC模式)
(3)TCCR1B的bit2、bit1、bit0設(shè)置時鐘頻率。
(4)OCR1A用來設(shè)置計數(shù)的上限值
例程:
#include
#include
void main()
{
DDRD|=0X30; //PD4、PD5設(shè)為輸出
TCCR1A=0X50; //比較匹配時取反
TCCR1B=0X09; //CTC模式,無預(yù)分頻
OCR1A=1999; //OC1A、OC1B均產(chǎn)生2KHz的方波信號(系統(tǒng)時鐘為8MHz)
}