新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > MSP430F5529 (七)定時器B

        MSP430F5529 (七)定時器B

        作者: 時間:2016-11-28 來源:網(wǎng)絡(luò) 收藏
        7.2.5捕獲/比較控制寄存器TB0CCTL0-TB0CCTL6:
        CM:捕獲模式設(shè)定 00不捕獲
        01上升沿捕獲
        10下降沿捕獲
        11上升和下降沿都捕獲
        CCIS:捕獲源的選擇 00CCIxA
        01CCIxB
        10GND
        11VCC
        SCS:同步捕獲源,設(shè)定是否與時鐘同步
        0異步捕獲
        1同步捕獲
        CLLD:比較寄存器緩沖裝載模式選擇。
        00 TB0CCRn的值(改變時)立即裝載到TB0CLn
        01當(dāng)TB0R的值計到0時,進(jìn)行裝載
        10增模式或者連續(xù)模式下,TBR0值計到0時,進(jìn)行裝載;
        增減模式下,TBR0計數(shù)到TBCL0時,開始裝載;
        11TBR0計數(shù)到TBCL0時,開始裝載;
        CAP: 0-比較模式 1-捕獲模式
        OUTMOD:輸出模式控制位。同TA一模一樣
        CCIE:中斷使能,該位允許相應(yīng)的CCIFG標(biāo)志中斷請求。
        0-中斷禁止 1-中斷允許
        CCI:捕獲比較輸入,所選擇的輸入信號可以通過該位讀取
        OUT:對于輸出模式0,該位直接控制輸出狀態(tài)。
        0-輸出低電平 1-輸出高電平
        COV:捕獲溢出位。該位表示一個捕獲溢出發(fā)出,COV必須由軟件復(fù)位。
        0-沒有捕獲溢出發(fā)生1-有捕獲溢出發(fā)生
        CCIFG:捕獲比較中斷標(biāo)志位。
        0-沒有中斷掛起 1-有中斷掛起
        7.2.6 中斷向量寄存器TB0IV
        同TAIV一樣,里面存放一個數(shù)字編號。
        7.3重點(diǎn)講TB和TA的不同之處
        7.3.1沒有再把CCI信號鎖存了
        TA作捕獲器的時候,CCI為捕獲信號,然后CCI被鎖存輸出 為SCCI;
        但是,TB沒有鎖存。也就是說只能從CCI位查看輸入信 號了。
        7.3.2計數(shù)值位數(shù)可調(diào)了(其實(shí)無所謂,都可以16位那干嘛不用)
        TA的計數(shù)值寄存器TAR只能是16位(0XFFFFh);
        TB的計數(shù)值寄存器TBR可以選擇是16、12、10、8位;
        7.3.3兩級緩沖比較器(比較模式下)
        TA里面,我們在TACCRn中寫入要比較的數(shù)值,然后讓TAR中的計數(shù)值和TACCRn比較,如果相等了,相應(yīng)的標(biāo)志位就會置位;
        TB里面,不僅有TB0CCRn,還多了一個二級緩存器TB0CLn。TB0CLn不能被直接進(jìn)行操作,它的值只能來源于TB0CCRn。計數(shù)的時候,TB0R中的計數(shù)值不和TB0CCRn比較,而是和TB0CLn進(jìn)行比較。
        二級緩沖是為了防止我們在修改TB0CCRn的值的時候,對計數(shù)產(chǎn)生影響。因?yàn)橛嫈?shù)器不直接和TB0CCRn比較,而是TB0CCRn把值賦給TB0CLn,由TB0CLn去和TB0R進(jìn)行比較。所以也就有了CLLD位控制比較寄存器緩沖裝載模式:(當(dāng)向TB0CCRn中重新寫數(shù)時)
        00TB0CCRn的值立即裝載到TB0CLn
        01當(dāng)TB0R的值計到0時,進(jìn)行裝載
        10增模式或者連續(xù)模式下,TBR0值計到0時,進(jìn)行裝載;
        增減模式下,TBR0計數(shù)到TBCL0時,開始裝載;
        11 TBR0計數(shù)到TBCL0時,開始裝載;
        7.3.4比較器可以被分組
        TA沒有二級緩沖寄存器,而且本來的TACCRn也只能被單 獨(dú)使用。
        對于TB:
        TBCLGGRP:TB0CLn二級緩沖寄存器分組控制
        00:每個TB0CLn獨(dú)立使用
        01:TB0CL1+TB0CL2作為一組(TB0CCR1的CLLD位控制整組數(shù)據(jù)更新)
        TB0CL3+TB0CL4作為一組(TB0CCR3的CLLD位控制整組數(shù)據(jù)更新)
        TB0CL5+TB0CL6作為一組(TB0CCR5的CLLD位控制整組數(shù)據(jù)更新)
        10:TB0CL1、2、3一組,(TB0CCR1的CLLD位控制整組數(shù)據(jù)更新)
        TB0CL4、5、6一組,(TB0CCR4的CLLD位控制整組數(shù)據(jù)更新)
        11:TB0CL0、1、2、3、4、5、6整合為一組,
        (TB0CCR1的CLLD位控制整組數(shù)據(jù)更新)
        所謂的分組,就是該組的數(shù)據(jù)要同時更新。
        以10模式下的TB0CL1、2、3這組為例:
        TB0CCTL1中的CLLD設(shè)置為01,即TB0R計數(shù)到0時,TB0CCR1就會把值裝載(更新)到TB0CL2中,同時TB0CCR2就會把值裝載(更新)到TB0CL2中,同時TB0CCR3也會把值裝載(更新)到TB0CL3中。無論TB0CCRn中的值有幾個發(fā)生了變化,但它們都只會同時更新TB0CLn。
        一個重要的應(yīng)用:
        如圖,增減模式下,可以用來產(chǎn)生有死區(qū)時間(dead time)的信號。
        我們知道有一種H橋電路結(jié)構(gòu),該電路有一般有兩個輸入端,而且這兩個輸入端(1和2)嚴(yán)禁同時輸入高電平。那么該怎么產(chǎn)生驅(qū)動該電路的信號呢:
        但是,如果我們想要在系統(tǒng)運(yùn)行的時候,修改死區(qū)時間怎么辦。那只有修改
        比較器里面的數(shù)值了。這樣就有問題了,如果兩個比較器數(shù)值沒有同時修改,那么就有可能產(chǎn)生同時為高電平的情況,這就很危險了。所以,我們把比較器分組,這樣數(shù)據(jù)同時更新,就不會有這樣的擔(dān)心了。
        上一頁 1 2 下一頁

        關(guān)鍵詞: MSP430F5529定時器

        評論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 富川| 白河县| 宝清县| 博爱县| 云和县| 林周县| 酉阳| 巴青县| 天祝| 连山| 岚皋县| 黎平县| 临城县| 巴马| 电白县| 广水市| 宝应县| 临西县| 海晏县| 江安县| 衡东县| 怀远县| 泽库县| 钟祥市| 临夏市| 湖南省| 阿克苏市| 濮阳市| 景东| 丹东市| 华安县| 江达县| 望都县| 灵璧县| 宝兴县| 丘北县| 高雄县| 隆林| 聂荣县| 南郑县| 镇巴县|