<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 元件/連接器 > 設計應用 > 雙 μC 的 PWM 頻率和分辨率

雙 μC 的 PWM 頻率和分辨率

作者: 時(shí)間:2023-03-07 來(lái)源: 收藏

有兩種方法可以降低 DAC 的紋波??梢越档偷屯V波器的截止頻率,或者提高信號的頻率。不可避免地,較低的截止頻率轉化為較慢的上升時(shí)間,而更快的 頻率轉化為較低的分辨率(通過(guò)在給定時(shí)鐘頻率下減小計數器大小來(lái)實(shí)現)。

本文引用地址:http://dyxdggzs.com/article/202303/444111.htm


該方法是過(guò)濾 PWM 信號的 HF 分量,只留下與占空比成正比的 LF 或 DC 分量。然而,低通濾波器并不能完全濾除PWM頻率,因此LF/DC信號一般會(huì )有一些紋波。


有兩種方法可以降低 PWM DAC 的紋波??梢越档偷屯V波器的截止頻率,或者提高PWM信號的頻率。不可避免地,較低的截止頻率轉化為較慢的上升時(shí)間,而更快的 PWM 頻率轉化為較低的分辨率(通過(guò)在給定時(shí)鐘頻率下減小計數器大小來(lái)實(shí)現)。


我將討論一個(gè)有趣的設計理念,它專(zhuān)注于在不使用上述方法的情況下降低 PWM DAC 的紋波。


事實(shí)證明,我們可以通過(guò)使用兩個(gè)相位差為 180° 的 PWM 信號來(lái)降低紋波。直觀(guān)上,當兩個(gè)相同頻率的正弦信號之間存在 180° 相位差時(shí),它們會(huì )相互抵消,所以我們期望當我們使用兩個(gè)具有 180° 相位差的 PWM 信號時(shí),諧波會(huì )相互抵消,對嗎?嗯,這是真的,但不是 PWM 信號的所有諧波。其中一些被取消,但其中一些 不。它與傅里葉級數有關(guān),對于這篇文章來(lái)說(shuō)有點(diǎn)太復雜了,所以我不會(huì )深入討論數學(xué)。


雙 μC 的 PWM 頻率和分辨率


如何實(shí)現兩個(gè) PWM 信號之間的 180° 相移?我使用了 TI 的MSP430FR5969 LaunchPad,但該方法大多是通用的。為了實(shí)施相移,您將需要兩個(gè)定時(shí)器。其中一個(gè)定時(shí)器必須有兩個(gè)比較捕獲 PWM (CCP) 模塊,另一個(gè)只需要一個(gè) CCP。


您可以使用其中一個(gè) CCP 在具有兩個(gè) CCP 的定時(shí)器中設置 PWM 頻率和占空比,并使用另一個(gè) CCP 生成中斷以啟動(dòng)另一個(gè)定時(shí)器,延遲等于 PWM 周期的一半。另一個(gè)定時(shí)器中的單個(gè) CCP 用于設置相同的 PWM 頻率和占空比。您還必須“微調”延遲,因為軟件將在 PWM 信號之間引入額外的時(shí)間。例如,在我的代碼的第 102 行,我將比較寄存器值從 (timer_period+1)/2 更改為 (timer_period+1)/2-27。


我做了一些研究,看看其他微控制器是否有類(lèi)似的硬件以及實(shí)現我使用的方法的能力:許多 Atmel 微控制器有多個(gè)定時(shí)器,通常每個(gè)都有兩個(gè) CCP(例如,ATmega 328)。因此,應該可以實(shí)施此方法。另一個(gè)流行的例子,STM32F051R8(這是一些流行的 ST 板使用的微控制器)有 11 個(gè)定時(shí)器,其中許多有多個(gè) CCP。Texas Instrument 的基于 ARM 的微控制器通常具有單獨的 PWM 和定時(shí)器模塊(例如 TM4C123GH6PM),因此應該更容易實(shí)現相移。通過(guò)使用其中一個(gè)定時(shí)器,兩個(gè) PWM 模塊可以以半個(gè) PWM 周期的延遲啟動(dòng)。如果您嘗試為不同的微控制器實(shí)施這種相移方法,請在評論部分告訴我。


雙 μC 的 PWM 頻率和分辨率

圖1  單和雙 PWM 電路


在 相移 DAC 的V out 處,兩個(gè) PWM 信號相加在一起,希望一些諧波相互抵消,因此我們終得到較低的紋波。


讓我們看一下使用不同電阻值的三種情況。每個(gè) PWM 信號在 25% 的占空比下都是 100 kHz。


雙 μC 的 PWM 頻率和分辨率

圖2  上面的跡線(xiàn)是傳統的 PWM。下方是雙相移 PWM。伏特/格 從左到右遞減:100mV、50mV、5mV。


通過(guò)查看結果,我們觀(guān)察到兩件事。首先,峰峰值紋波降低。其次,傳統 PWM DAC 的紋波基頻等于 PWM 信號的頻率 (100 kHz)。相移 PWM DAC 的紋波基頻等于 PWM 信號的二次諧波 (200 kHz),這意味著(zhù)我們成功地使用相移 DAC 消除了 PWM 信號的諧波。


這種方法的一個(gè)優(yōu)點(diǎn)是在不增加上升時(shí)間的情況下降低紋波(或在上升時(shí)間的一半時(shí)保持相同的紋波)。


另一個(gè)潛在的優(yōu)勢是通過(guò)將兩個(gè) PWM 分開(kāi)一個(gè)計數以獲得中間值,從而使 DAC 的有效分辨率加倍。這確實(shí)會(huì )導致輕微的不對稱(chēng)和紋波增加,但影響可以忽略不計。



關(guān)鍵詞: PWM

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>