在實際的應用中會用到需要輸出一定相位差的PWM波,而且在運行過程中還需要調(diào)整PWM的頻率,下面介紹使用瑞薩RX系列MCU內(nèi)部的GPTW實現(xiàn)這種功能的方法,我們以RX66T為例。
RX66T概覽
RX66T系列微控制器是首批搭載RXv3第三代RX CPU內(nèi)核的產(chǎn)品,是電機控制應用的最佳選擇。RX66T系列可通過最大160 MHz工作頻率的CPU內(nèi)核和電機控制外設,能同時控制多達四臺電機。內(nèi)置的安全和安全功能還為變頻控制應用提供了新的附加價值。
有關RX66T的更多介紹與技術、銷售支持,請識別下方二維碼或點擊文末閱讀原文訪問查看:
![b4cfca62-8dbd-11ed-bfe3-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9F/31/wKgaomToFuKAN3gUAAAIAdjDTck507.png)
-
RXv3 Core 160MHz operation (5.8 CoreMark/MHz), single-precision FPU
-
2.7V to 5.5V操作
-
工作溫度-40 °C ~ 105 °C
-
程序閃存高達1MB,高達128KB的SRAM
-
增強型模擬:
12位A/D轉換器x3個單元,12位D/A轉換器x2個通道
6通道比較器
6通道偽差分PGA
-
160MHz PWM:
4通道:用于3相互補開關,2個通道:用于5相互補開關,10個通道:用于單相互補開關
4通道高分辨率PWM可實現(xiàn)最小195ps的時序調(diào)整
-
可信安全IP精簡版(AES/TRNG)
首先先看一下GPTW的PWM輸出模式,如下面表格所示,可以看到在GPTW的GTCR寄存器的MD位可以設置PWM輸出時的模式,主要的工作模式分為兩大類,一類是鋸齒波的工作模式另外一類是三角波的工作模式。
![b4e8ba18-8dbd-11ed-bfe3-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9F/31/wKgaomToFuKAMCd1AACN6Tnb-JA613.png)
鋸齒波模式
如下圖為鋸齒波的模式,在這種模式下,GTCNT寄存器的值會單向增加,達到設定周期值時,GTCNT的值清零。PWM的產(chǎn)生由各個比較計數(shù)器和GTCNT比較相等后翻轉產(chǎn)生,比如下圖中的GTCCRC、GTCCRD、GTCCRE和GTCCRF。
![b50967d6-8dbd-11ed-bfe3-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9F/31/wKgaomToFuKACVusAABknFMI9wQ676.png)
三角波模式
如下圖為三角波的模式,在這種模式下,GTCNT的值會增加達到定時周期值時,變?yōu)闇p計數(shù),直到0。這種工作模式下,每一個周期內(nèi)GTCNT的值會和同一個比較寄存器的值進行兩次比較反轉,所以會出現(xiàn)左右對稱的PWM波,如果想實現(xiàn)兩個上升沿或者下降沿相差固定度數(shù)的PWM比較困難,同時調(diào)整周期和相位也比較麻煩。
![b52be428-8dbd-11ed-bfe3-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9F/31/wKgaomToFuKAJFHWAABk12iDIso472.png)
根據(jù)分析,我們選擇GPTW工作在三角波模式,而sawtooth-wave one-shot pulse mode是最合適的(這幾種工作模式的區(qū)別請參考RX66T的用戶手冊)。
假設我們的需求是:生成兩路周期相等的PWM波,而且能夠要求周期可以動態(tài)調(diào)整,同時需要兩路PWM的上升沿具有一定的相位差,并且相位差在運行過程中可以動態(tài)調(diào)整。
下面就介紹一下如何使用GPTW實現(xiàn)這個功能,首先需要使用三路GPTW定時器,定時器的設置如下:
1)GPTW1設置為鋸齒波模式,作為GPTW2和GPTW3的周期清零信號定時器,它用來控制兩個PWM輸出的周期。
2)GPTW2設置為sawtooth-wave one-shot pulse mode,波形的占空比和死區(qū)時間(死區(qū)時間僅在GPTW需要輸出一對互補PWM時才需要,在這個例子里不用考慮)由GPTW2的比較寄存器(比如GTCCRC和GTCCRD)來決定,這個定時器的周期設置值遠大于GPTW1的周期值,同時設置GPTW2可以被外部清零啟動信號觸發(fā),觸發(fā)信號為GPTW1的周期溢出信號。
3)GPTW3設置為sawtooth-wave one-shot pulse mode,波形的占空比和死區(qū)時間(死區(qū)時間僅在GPTW需要輸出一對互補PWM時才需要,在這個例子里不用考慮)由GPTW3的比較寄存器(比如GTCCRC和GTCCRD)來決定,這個定時器的周期設置值遠大于GPTW1的周期值,同時設置GPTW3可以被外部清零啟動信號觸發(fā),觸發(fā)信號為GPTW1的比較相等信號。
![b54c4650-8dbd-11ed-bfe3-dac502259ad0.png](https://file1.elecfans.com//web2/M00/9F/31/wKgaomToFuKAH3wVAAEyEYFhnBY444.png)
GPTW的工作過程如上圖所示
在標簽1處,GPTW2會被GPTW1的溢出信號清零啟動,所以兩個標簽1之間的時間就為GPTW2周期時間。在標簽2處,GPTW3會被GPTW1的比較相等信號清零啟動,所以上圖兩個標簽2之間的時間就是GPTW2的周期時間。當GPTW1的周期和GTCCRA的值不變時,GPTW2和GPTW3的周期是一致的,都為GPTW1的周期值,而GTCCRA的值決定了兩個PWM的相位差。
所以在調(diào)整GPTW2和GPTW3的周期時只用調(diào)整GPTW1的GPTR寄存器即可。調(diào)整相位差時,調(diào)整GPTW1的GTCCRA寄存器即可。而GPTW2和GPTW3自身的占空比可以通過調(diào)整自己比較寄存器來實現(xiàn)。
通過這種方式就很容易輸出滿足要求的PWM波。
1
END
1
![b634dd2a-8dbd-11ed-bfe3-dac502259ad0.jpg](https://file1.elecfans.com//web2/M00/9F/31/wKgaomToFuKAHCW6AAG9wtn4yvo806.jpg)
原文標題:如何使用RX系列的GPTW生成兩路可調(diào)頻率的任意相位差的pwm波
文章出處:【微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
-
mcu
+關注
關注
146文章
17360瀏覽量
352841 -
瑞薩
+關注
關注
35文章
22312瀏覽量
86834
原文標題:如何使用RX系列的GPTW生成兩路可調(diào)頻率的任意相位差的pwm波
文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
兩路DAC570無法同步的原因是什么?
使用DAC3162輸出正交信號,當頻率逐漸升高時,IQ信號相位開始發(fā)生不正交的現(xiàn)象,為什么?
電路小知識 | 交流電路復數(shù)的基礎知識以及相位差和電抗的計算
兩個高速ADC的CLK時鐘如何做到同步無相位差?
需要對兩個信號(10M的信號)進行去相位差的運算,如何消除或者補償電路對兩信號相位差的改變?
LF353運放輸入20khz的正弦波,低通濾波截止頻率100khz后有相位差如何解決?
STM32F103如何測量兩個方波的相位差?
示波器測量相位差的原理和方法簡析
普源示波器測量相位差的原理和方法
![普源示波器測量<b class='flag-5'>相位差</b>的原理和方法](https://file1.elecfans.com//web2/M00/E1/BF/wKgZomY50y6AV_UaAAIy52FGsDk687.jpg)
評論