久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

(1)STM32定時(shí)器輸出比較模式中的疑惑

 guitarhua 2014-12-11

OCx與OCxREF和CCxP之間的關(guān)系

初學(xué)STM32,我這個(gè)地方卡了很久,,現(xiàn)在終于有些明白了,,現(xiàn)在把我的理解寫(xiě)下與大家共享,如果有不對(duì)的地方,,還請(qǐng)指出,。

OCxREF就是一個(gè)參考信號(hào),并且約定:

OCxREF=1,,稱OCxREF有效,。反之,OCxREF=0,,稱OCxREF無(wú)效,;

 ‘1’電平(高電平)稱為OCxREF的有效電平,‘0’ 電平(低電平)稱為OCxREF的無(wú)效電平。

——依據(jù)參考手冊(cè):The output stage generates an intermediate waveform which is then used for reference:OCxRef (active high). The polarity acts at the end of the chain.

(翻譯)輸出階段產(chǎn)生一個(gè)中間波形OCxRef(高有效)作為參考,。輸出信號(hào)的極性體現(xiàn)在信號(hào)鏈的末端,。

現(xiàn)在解釋幾個(gè)名詞之間的關(guān)系:

STM32定時(shí)器輸出比較模式中的疑惑

然后來(lái)理解輸出比較的幾個(gè)模式(PWM模式是輸出比較模式的特例)

查看TIMx_CCMR1寄存器的OC1M域,有如下定義(摘自最新版的參考手冊(cè))

STM32定時(shí)器輸出比較模式中的疑惑

翻譯如下:

000:凍結(jié)——輸出比較寄存器TIMx_CCR1中的內(nèi)容與計(jì)數(shù)器TIMx_CNT中的內(nèi)容之間的比較對(duì)輸出無(wú)影響,。(此模式用于時(shí)基的生成)

001:當(dāng)匹配時(shí),,設(shè)置通道1為有效電平。當(dāng)計(jì)數(shù)器TIMx_CNT中的內(nèi)容與捕捉/比較寄存器1(TIMx_CCR1)中的內(nèi)容相匹配時(shí),,強(qiáng)行拉高OC1REF 信號(hào),。

010:當(dāng)匹配時(shí),設(shè)置通道1為無(wú)效電平,。當(dāng)計(jì)數(shù)器TIMx_CNT中的內(nèi)容與捕捉/比較寄存器1(TIMx_CCR1)中的內(nèi)容相匹配時(shí),強(qiáng)行拉低OC1REF 信號(hào),。

011:翻轉(zhuǎn)——當(dāng)TIMx_CNT= TIMx_CCR1時(shí),,OC1REF信號(hào)取反。

100:強(qiáng)制無(wú)效電平——強(qiáng)行拉低OC1REF 信號(hào),。

101:強(qiáng)制有效電平——強(qiáng)行拉高OC1REF 信號(hào),。

110:PWM模式1——向上計(jì)數(shù)模式中,只要TIMx_CNT< TIMx_CCR1,通道1有效,,反之無(wú)效,。向下計(jì)數(shù)模式中,只要TIMx_CNT> TIMx_CCR1,,通道1無(wú)效OC1REF=0),,反之有效(OC1REF=1)。

110:PWM模式2——向上計(jì)數(shù)模式中,,只要TIMx_CNT< TIMx_CCR1,通道1無(wú)效,,反之有效。向下計(jì)數(shù)模式中,,只要TIMx_CNT> TIMx_CCR1,,通道1有效,反之無(wú)效,。

我用紅色標(biāo)出了提到有效,、無(wú)效的地方。不難發(fā)現(xiàn),,有效與無(wú)效分別對(duì)應(yīng)OC1REF=1和OC1REF=0,。這正是我們先前約定的結(jié)果。

到此,,不同模式下輸出比較的結(jié)果對(duì)OC1REF信號(hào)的影響已經(jīng)很清楚了,,但是最終的輸出信號(hào)是OC1,并不是OC1REF。而且前面有一句話(輸出信號(hào)的極性體現(xiàn)在信號(hào)鏈的末端)還未做解釋,。

到底OC1REF與OC1之間有何秘密呢,?我們來(lái)看下面這個(gè)圖:

STM32定時(shí)器輸出比較模式中的疑惑

顯然,我們只關(guān)心紅色圈內(nèi)的信號(hào)與方框內(nèi)的寄存器位以及信號(hào)在它們之間是如何傳播的,。

oc1ref從輸出模式控制器(Output mode controller)開(kāi)始,,分為兩路,上面一路至主模式控制器(To the master mode controller),這里我們不關(guān)心它的去向,,我們關(guān)心的是下面一路,,下面一路在進(jìn)入雙路開(kāi)關(guān)之前又被分成了兩路——一路是原信號(hào),一路是原信號(hào)的非,。顯然TIMx_CCER中的CC1P位用來(lái)控制這個(gè)開(kāi)關(guān),,CC1E位控制著整條信號(hào)鏈的通斷

當(dāng)CC1P=0時(shí)(CC1E=1):

 



STM32定時(shí)器輸出比較模式中的疑惑







 


當(dāng)CC1P=1時(shí)(CC1E=1):                                           STM32定時(shí)器輸出比較模式中的疑惑

很顯然,,OC1與OC1REF的關(guān)系只受CC1P的影響(CC1E=1)

STM32定時(shí)器輸出比較模式中的疑惑

然而參考手冊(cè)上對(duì)CC1P位是這么描述的:

STM32定時(shí)器輸出比較模式中的疑惑

CC1P=0時(shí):OC1高電平有效

CC1P=1時(shí):OC1低電平有效

根據(jù)本文開(kāi)篇的名詞解釋,,可以這么理解:

CC1P=0時(shí):OC1有效電平是高電平

CC1P=1時(shí):OC1有效電平是低電平

這時(shí)就迷惑了,這個(gè)高電平有效和低電平有效是啥意思呢,?

我們從頭分析(整個(gè)過(guò)程CC1E=1,,OC1的輸出是允許的):

假定OC1REF有效(OC1REF=1),那么OC1REFOC1的整條信號(hào)鏈上的信號(hào)都是有效信號(hào),,我們稱OC1輸出了有效信號(hào),。

那這個(gè)有效信號(hào)是高電平還是低電平呢?

這就是由CC1P決定的:

STM32定時(shí)器輸出比較模式中的疑惑

假定OC1REF無(wú)效(OC1REF=0),,那么OC1REFOC1的整條信號(hào)鏈上的信號(hào)都是無(wú)效信號(hào),,我們稱OC1輸出了無(wú)效信號(hào)。

無(wú)效信號(hào)的高電平和低電平也是由CC1P決定:

STM32定時(shí)器輸出比較模式中的疑惑

用一張表來(lái)總結(jié)上述過(guò)程:

OC1REF

CC1P

功能

OC1

描述

0

0

OC1高電平有效

0(低電平)

無(wú)效

1

OC1低電平有效

1(高電平)

無(wú)效

1

0

OC1高電平有效

1(高電平)

有效

1

OC1低電平有效

0(低電平)

有效

顯然,,OC1REF決定了OC1輸出電平是否有效,,而CC1P決定了有效電平的極性。

我們抽出上表的后四列:

CC1P

功能

OC1

描述

0

OC1高電平有效

0(低電平)

無(wú)效

1

OC1低電平有效

1(高電平)

無(wú)效

0

OC1高電平有效

1(高電平)

有效

1

OC1低電平有效

0(低電平)

有效

我們將表按1,、2列合并

CC1P

功能

OC1

描述

0

 

OC1高電平有效

0(低電平)

無(wú)效

OC1高電平有效

1(高電平)

有效

1

 

OC1低電平有效

0(低電平)

有效

OC1低電平有效

1(高電平)

無(wú)效

現(xiàn)在很清楚了,,從上表中可以清楚地看到CC1P對(duì)OC1有效極性的控制。即,,OC1的極性只有與CC1P指定的有效極性一致,,OC1才能是有效的(綠色部分)。這樣就解釋了“輸出信號(hào)的極性體現(xiàn)在信號(hào)鏈的末端”這句話,。

然而這條鏈還未結(jié)束,,還有個(gè)CC1E呢。當(dāng)然,,它就是一個(gè)OC1輸出使能位而已,。

但細(xì)心的你可能會(huì)發(fā)現(xiàn),,參考手冊(cè)上對(duì)CC1E位有這樣的描述:

STM32定時(shí)器輸出比較模式中的疑惑

OCx = OCxREF + Polarity

這個(gè)式子告訴我們OCx與OCxREF和Polarity(極性,即CCxP位)的關(guān)系,。

我們上面提到了它們的關(guān)系,,是分了兩種情況(CC1P=0和CC1P=1)表示的,這個(gè)式子幫我們將上面關(guān)系歸納成了一個(gè),。這個(gè)式子怎么得來(lái)的,?

回憶一下數(shù)字電路里面的半加器(就是不進(jìn)位的加法),真值表如下:

OCxREF

Polarity

OCx

0無(wú)效

0(高有效)

0無(wú)效

0無(wú)效

1(低有效)

1無(wú)效

1有效

0(高有效)

1有效

1有效

1(低有效)

0有效

我們寫(xiě)邏輯函數(shù)(按黃色部分寫(xiě)):

STM32定時(shí)器輸出比較模式中的疑惑

STM32定時(shí)器輸出比較模式中的疑惑

注意:前面的“+”號(hào)表示半加運(yùn)算(不進(jìn)位加法),其實(shí)是邏輯上的“異或”,。

OC1連接到TIMx_CH1上,,而TIMx_CH1是復(fù)用的??稍趨⒖际謨?cè)上定時(shí)器功能復(fù)用部分找到,。

下面給出一些定時(shí)器功能復(fù)用的表格:

STM32定時(shí)器輸出比較模式中的疑惑

STM32定時(shí)器輸出比較模式中的疑惑

STM32定時(shí)器輸出比較模式中的疑惑

STM32定時(shí)器輸出比較模式中的疑惑

STM32定時(shí)器輸出比較模式中的疑惑


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多