この項では、高速PWMモジュールでサポートされている次の動作モードについて説明し ます。
• プッシュプル出力モード
• 相補出力モード
• 冗長出力モード
• 独立出力モード
これらの動作モードは、PWM I/O制御(IOCONx<11:10>)レジスタのPWM I/Oピン モード (PMOD<1:0>)ビットで選択します。
43.9.1 プッシュプルPWMモード
プッシュプルモードでは、PWMxHとPWMxLピンにPWM信号が交互に出力されます。
プッシュプル モードの典型的なアプリケーションは、43.16 項「アプリケーション情報」
で説明します。
図43-24に、プッシュプルPWMモードのPWM出力を示します。
図43-24: プッシュプルPWMモード
43.9.2 相補PWMモード
相補PWMモードでは、PWM出力のPWMxHがPWMxL出力の相補信号となります。相 補PWM モードの典型的なアプリケーションは、43.16 項「アプリケーション情報」で説 明します。
図43-25 に、相補PWMモードのPWM出力を示します。
図43-25: 相補PWMモード PWM1H
PWM1L
DCX - DTR
Period - DCX + DTR
TON
TOFF
Period Period
Dead Time Dead Time Dead Time
Period Duty Cycle 0
Period
Timer Value
Timer Resets
PWMxH Value
PWMxL Duty Cycle
Duty Cycle Match
PWM1L PWM1H
Dead Time Dead Time Dead Time
Period
Period Duty Cycle 0
Period
Timer Value
Timer Resets
PWMxH Value
PWMxL (Period-duty cycle)
Duty Cycle Match
注: 正のデッド タイムを示しています。
© 2009 Microchip Technology Inc. DS70323B_JP -ページ43-51
高速 PWM
43
43.9.3 冗長PWM出力モード
高速 PWM モジュールの冗長 PWM 出力モードは、1 つの PWM ピンペア (PWMxH と
PWMxL)から、同じシングルエンドのPWM信号を2つ出力する機能です。このモードで
は、PDCx レジスタを使用してデューティ サイクルを指定します。この出力モードでは、
ユーザー アプリケーションでオーバーライド値を指定した場合を除き、2つのPWM出力 ピンから同じPWM信号が出力されます。
図43-26に、冗長PWM出力モードを示します。
図43-26: 冗長PWM出力モード
表43-3に、上記PWMモード時のPWMレジスタの機能を示します。
表43-3: 相補、プッシュプル、冗長出力モード時のレジスタの機能
Duty Cycle 0
Period
Timer Value
PWMxH Value
Programmed Duty
Cycle
PWMxL
Time Base Master Time Base Independent Time Base
Shared Time Base
Function PWMxH PWMxL PWMxH PWMxL
PWM Period PTPER PTPER PHASEx PHASEx
PWM Duty Cycle MDC MDC MDC/PDCx(1) MDC/SDCx(1)
PWM Phase Shift PHASEx PHASEx N/A N/A
ADC Trigger SEVTCMP/TRIGx(2) SEVTCMP/TRIGx(2) TRIGx TRIGx
注 1: 独立タイム ベースの場合、PWMxHのデューティ サイクルはMDCまたはPDCxのいずれかによっ て制御され、PWMxLのデューティサイクルはMDCまたはSDCxによって制御されます。
2: マスタータイムベースの場合、SEVTCMPまたはTRIGxレジスタのいずれかによってADCをトリ ガできます。
DS70323B_JP -ページ43-52 © 2009 Microchip Technology Inc.
43.9.4 完全独立PWM出力モード
完全独立PWM出力モードでは、各PWM出力(PWMxHとPWMxL)に異なるデューティ サイクルを設定し、相互に関連して位相をシフトできます。PWMxH出力のデューティサ イクルは、PDCxレジスタで指定します。PWMxL出力のデューティ サイクルと位相シフ トは、SDCxおよびSPHASExレジスタで指定します。このモードは、ITB = 0および PMOD = 3とすることで設定できます。ITB = 1および PMOD = 3とすると、2つのPWM 出力はそれぞれ完全に独立したタイムベース周期とデューティサイクルで動作し、こち らの動作モードは完全独立モードと呼びます。PHASExとPDCxレジスタの出力、および
ITB = 1によって、PWMxH出力のPWM周期とデューティ サイクルを制御します。
図43-27: 独立PWM出力モード
例 43-17: PWM出力ピンのモード選択
注: 完全独立モードの場合、PWM信号間には、位相での相互関連はありません。
Duty Cycle 2 PWMxL
Duty Cycle 1 PWMxH
Period PMTMR =0
Duty Cycle 2 PWMxL
Duty Cycle 1 PWMxH
Period Phase 2
PMTMR =0
Duty Cycle 2 PWMxL
Duty Cycle 1 PWMxH
Period 2 Period 1
Master Time Base Phase = 0 SPHASE = 0
Master Time Base
ITB = 1 with Phase Shift
/* Select PWM I/O pin Mode – Choose one of the following output modes */
IOCON1bits.PMOD = 0; // For Complementary Output mode IOCON1bits.PMOD = 1; // For Redundant Output mode IOCON1bits.PMOD = 2; // For Push-Pull Output mode
IOCON1bits.PMOD = 3; // For True Independent Output mode
© 2009 Microchip Technology Inc. DS70323B_JP -ページ43-53
高速 PWM
43
表43-4に、独立出力モード時のPWMレジスタの機能を示します。
表43-4: 独立出力モード時のレジスタの機能
Time Base Master Time Base Independent Time Base
Shared Time Base
Function PWMxH PWMxL PWMxH PWMxL
PWM Period PTPER PTPER PHASEx SPHASEx(3)
PWM Duty Cycle MDC MDC MDC/PDCx(1) MDC/SDCx(1)
PWM Phase Shift PHASEx SPHASEx N/A N/A
ADC Trigger SEVTCMP/TRIGx(2) SEVTCMP/TRIGx(2) TRIGx TRIGx
注 1: 独立タイムベースの場合、PWMxHのデューティサイクルはMDCまたはPDCxのいずれかによっ て制御され、PWMxLのデューティ サイクルはMDCまたはSDCxによって制御されます。
2: マスター タイム ベースの場合、SEVTCMPまたはTRIGxレジスタのいずれかによってADCをトリ ガできます。
3: SPHASExレジスタは、独立PWM出力モードでのみ使用します。
DS70323B_JP -ページ43-54 © 2009 Microchip Technology Inc.