AVR單片機(jī)定時(shí)器的要點(diǎn)
分5種工作類型 一 普通模式 wgm1=0跟51的普通模式差不多,有tov1溢出中斷標(biāo)志,發(fā)生于max(0xffff)時(shí) 1采用內(nèi)部計(jì)數(shù)時(shí)鐘用于 icp捕捉輸入場(chǎng)合——-測(cè)量脈寬/紅外解碼(捕捉輸入功能可以工作在多種模式下,而不單單只是普通模式) 2 采用外部計(jì)數(shù)脈沖輸入 用于 計(jì)數(shù),測(cè)頻其他的應(yīng)用,采用其他模式更為方便,不需要像51般費(fèi)神 二?。悖簦隳J健。郾容^匹配時(shí)清零定時(shí)器模式] wgm1=4,12跟51的自動(dòng)重載模式差不多 ?。薄∮糜谳敵觯担埃フ伎毡鹊姆讲ㄐ盘?hào) 2 用于產(chǎn)生準(zhǔn)確的連續(xù)定時(shí)信號(hào)wgm1=4時(shí), 最大值由ocr1a設(shè)定,top時(shí)產(chǎn)生ocf1a比較匹配中斷標(biāo)志wgm1=12時(shí),最大值由icf1設(shè)定,?。簦铮饡r(shí)產(chǎn)生icf1輸入捕捉中斷標(biāo)志 如果top=max,top時(shí)也會(huì)產(chǎn)生tov1溢出中斷標(biāo)志 注:wgm=15時(shí),也能實(shí)現(xiàn)從oc1a輸出方波,而且具備雙緩沖功能 計(jì)算公式:?。妫铮悖睿剑妫悖欤耄撸椋铮ǎ玻睿ǎ保簦铮穑┳兞浚睢〈眍A(yù)分頻因子(1、8、64、256、1024),t2多了(32、128)兩級(jí)。 ?。场】焖伲穑鳎砟J健。鳎纾恚保剑担?,7,14,15單斜波計(jì)數(shù),用于輸出高頻率的pwm信號(hào)(比雙斜波的高一倍頻率)都有tov1溢出中斷,發(fā)生于top時(shí)[不是max,跟普通模式,ctc模式不一樣]比較匹配后可以產(chǎn)生ocf1x比較匹配中斷. ?。鳎纾恚保剑禃r(shí), 最大值為0x00ff, 8位分辨率 ?。鳎纾恚保剑稌r(shí), 最大值為0x01ff,?。刮环直媛省 。鳎纾恚保剑窌r(shí), 最大值為0x03ff,10位分辨率 ?。鳎纾恚保剑保磿r(shí),最大值由icf1設(shè)定,?。簦铮饡r(shí)產(chǎn)生icf1輸入捕捉中斷?。▎尉彌_) wgm1=15時(shí),最大值由ocr1a設(shè)定,top時(shí)產(chǎn)生ocf1a比較匹配中斷(雙緩沖,但oc1a將沒有pwm能力,最多只能輸出方波)改變top值時(shí)必須保證新的top值不小于所有比較寄存器的數(shù)值 注意,即使ocr1a/b設(shè)為0x0000,也會(huì)輸出一個(gè)定時(shí)器時(shí)鐘周期的窄脈沖,而不是一直為低電平 計(jì)算公式:fpwm=fclk_io/(n*(1+top)) 4 相位修正pwm模式?。鳎纾恚保剑保?,3,10,11雙斜波計(jì)數(shù),用于輸出高精度的,相位準(zhǔn)確的,對(duì)稱的pwm信號(hào)都有tov1溢出中斷,但發(fā)生在bootom時(shí)比較匹配后可以產(chǎn)生ocf1x比較匹配中斷. ?。鳎纾恚保剑睍r(shí), 最大值為0x00ff,?。肝环直媛省 。鳎纾恚保剑矔r(shí), 最大值為0x01ff,?。刮环直媛省 。鳎纾恚保剑硶r(shí), 最大值為0x03ff,10位分辨率 ?。鳎纾恚保剑保皶r(shí),最大值由icf1設(shè)定,?。簦铮饡r(shí)產(chǎn)生icf1輸入捕捉中斷 (單緩沖) ?。鳎纾恚保剑保睍r(shí),最大值由ocr1a設(shè)定,top時(shí)產(chǎn)生ocf1a比較匹配中斷(雙緩沖,但oc1a將沒有pwm能力,最多只能輸出方波)改變top值時(shí)必須保證新的top值不小于所有比較寄存器的數(shù)值可以輸出0% ̄100%占空比的pwm信號(hào)若要在t/c 運(yùn)行時(shí)改變top 值,最好用相位與頻率修正模式代替相位修正模式。若top保持不變,那么這兩種工作模式實(shí)際沒有區(qū)別 計(jì)算公式:fpwm=fclk_io/(2*n*top) ?。怠∠辔慌c頻率修正pwm模式?。鳎纾恚保剑?,9雙斜波計(jì)數(shù),用于輸出高精度的、相位與頻率都準(zhǔn)確的pwm波形都有tov1溢出中斷,但發(fā)生在bootom時(shí)比較匹配后可以產(chǎn)生ocf1x比較匹配中斷. ?。鳎纾恚保剑笗r(shí),最大值由icf1設(shè)定,?。簦铮饡r(shí)產(chǎn)生icf1輸入捕捉中斷?。▎尉彌_) wgm1=9時(shí),最大值由ocr1a設(shè)定,top時(shí)產(chǎn)生ocf1a比較匹配中斷(雙緩沖,但oc1a將沒有pwm能力,最多只能輸出方波)相頻修正修正pwm 模式與相位修正pwm 模式的主要區(qū)別在于ocr1x 寄存器的更新時(shí)間改變top值時(shí)必須保證新的top值不小于所有比較寄存器的數(shù)值可以輸出0% ̄100%占空比的pwm信號(hào)使用固定top 值時(shí)最好使用icr1 寄存器定義top。這樣ocr1a 就可以用于在oc1a輸出pwm 波。但是,如果pwm 基頻不斷變化(通過(guò)改變top值), ocr1a的雙緩沖特性使其更適合于這個(gè)應(yīng)用?! ∮?jì)算公式:fpwm=fclk_io/(2*n*top)