Atmega16 定時(shí)器T0的應(yīng)用
定時(shí)器工作模式:工作模式- T/C 和輸出比較引腳的行為- 由波形發(fā)生模式(WGM21:0) 及比較輸出模式
本文引用地址:http://m.butianyuan.cn/article/201611/316483.htm(COM21:0) 的控制位決定。比較輸出模式對(duì)計(jì)數(shù)序列沒有影響,而波形產(chǎn)生模式對(duì)計(jì)數(shù)序
列則有影響。COM21:0 控制PWM 輸出是否反極性。非PWM 模式時(shí)COM21:0 控制輸
出是否應(yīng)該在比較匹配發(fā)生時(shí)置位、清零,或是電平取反(P113 " 比較匹配輸出單元" )。
普通模式:普通模式(WGM21:0 = 0) 為最簡(jiǎn)單的工作模式。在此模式下計(jì)數(shù)器不停地累加。計(jì)到8
比特的最大值后(TOP = 0xFF),由于數(shù)值溢出計(jì)數(shù)器簡(jiǎn)單地返回到最小值0x00 重新開
始。在TCNT0 為零的同一個(gè)定時(shí)器時(shí)鐘里T/C 溢出標(biāo)志TOV2 置位。此時(shí)TOV2 有點(diǎn)象
第9 位,只是只能置位,不會(huì)清零。但由于定時(shí)器中斷服務(wù)程序能夠自動(dòng)清零TOV2,因
此可以通過軟件提高定時(shí)器的分辨率。在普通模式下沒有什么需要特殊考慮的,用戶可以
隨時(shí)寫入新的計(jì)數(shù)器數(shù)值。
輸出比較單元可以用來產(chǎn)生中斷。但是不推薦在普通模式下利用輸出比較產(chǎn)生波形,因?yàn)?/p>
會(huì)占用太多的CPU 時(shí)間。
T/C 時(shí)序圖:
8 位T/C 寄存器說明
T/C 控制寄存器- TCCR2
?Bit 7 – FOC2: 強(qiáng)制輸出比較
FOC2僅在WGM指明非PWM模式時(shí)才有效。但是,為了保證與未來器件的兼容性,使用
PWM 時(shí),寫TCCR2 要對(duì)其清零。寫1 后,波形發(fā)生器將立即進(jìn)行比較操作。比較匹配輸
出引腳 OC2 將按照COM21:0 的設(shè)置輸出相應(yīng)的電平。要注意FOC2 類似一個(gè)鎖存信號(hào),
真正對(duì)強(qiáng)制輸出比較起作用的是COM21:0 的設(shè)置。
FOC2 不會(huì)引發(fā)任何中斷,也不會(huì)在使用OCR2 作為TOP 的CTC 模式下對(duì)定時(shí)器進(jìn)行清
零。
讀FOC2 的返回值永遠(yuǎn)為0。
? Bit 6, 3 – WGM21:0: 波形產(chǎn)生模式
這幾位控制計(jì)數(shù)器的計(jì)數(shù)序列,計(jì)數(shù)器最大值TOP 的來源,以及產(chǎn)生何種波形。T/C 支
持的模式有:普通模式,比較匹配發(fā)生時(shí)清除計(jì)數(shù)器模式(CTC),以及兩種PWM 模式,
詳見 Table 50 與P114" 工作模式" 。
? Bit 5:4 – COM21:0: 比較匹配輸出模式
這些位決定了比較匹配發(fā)生時(shí)輸出引腳OC0 的電平。如果COM01:0 中的一位或全部都
置位, OC0 以比較匹配輸出的方式進(jìn)行工作。同時(shí)其方向控制位要設(shè)置為1 以使能輸出
驅(qū)動(dòng)。
當(dāng)OC0 連接到物理引腳上時(shí), COM01:0 的功能依賴于WGM01:0 的設(shè)置。Table 51 給
出了當(dāng)WGM01:0 設(shè)置為普通模式或CTC 模式時(shí)COM01:0 的功能。
二、在進(jìn)行相應(yīng)的應(yīng)用的時(shí)候請(qǐng)注意
不能對(duì)定時(shí)器TO賦初值,否則應(yīng)用普通模式時(shí),定時(shí)時(shí)間非常不準(zhǔn)確。
定時(shí)時(shí)間的改變只能通過時(shí)鐘源和分頻系數(shù)確定
最后說一句:Atmega16數(shù)據(jù)手冊(cè)做得很好,中文資料也多,非常容易去學(xué)習(xí)?。。。。。。。。。。?/p>
評(píng)論