Texas Instruments 28xxx, TMS320x28xx manual Example 3-6. Code Snippet for Configuration in Figure

Page 91

www.ti.com

Controlling Zero Voltage Switched Full Bridge (ZVSFB) Converter

Example 3-6. Code Snippet for Configuration in Figure 3-15

//=====================================================================

//Config //=====================================================================

//Initialization Time

//========================

 

// EPWM Module 1 config

 

EPwm1Regs.TBPRD = 1200;

// Period = 1201 TBCLK counts

EPwm1Regs.CMPA = 600;

// Set 50% fixed duty for EPWM1A

EPwm1Regs.TBPHS = 0;

// Set Phase register to zero

EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UP;

// Asymmetrical mode

EPwm1Regs.TBCTL.bit.PHSEN = TB_DISABLE;

// Master module

EPwm1Regs.TBCTL.bit.PRDLD = TB_SHADOW;

 

EPwm1Regs.TBCTL.bit.SYNCOSEL = TB_CTR_ZERO;

// Sync down-stream module

EPwm1Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;

 

EPwm1Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;

 

EPwm1Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO;

// load on CTR=Zero

EPwm1Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO;

// load on CTR=Zero

EPwm1Regs.AQCTLA.bit.ZRO = AQ_SET;

// set actions for EPWM1A

EPwm1Regs.AQCTLA.bit.CAU = AQ_CLEAR;

 

EPwm1Regs.DBCTL.bit.MODE = DB_FULL_ENABLE;

// enable Dead-band module

EPwm1Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC;

// Active Hi complementary

EPwm1Regs.DBFED = 50;

// FED = 50 TBCLKs initially

EPwm1Regs.DBRED = 70;

// RED = 70 TBCLKs initially

// EPWM Module 2 config

 

EPwm2Regs.TBPRD = 1200;

// Period = 1201 TBCLK counts

EPwm2Regs.CMPA.half.CMPA = 600;

// Set 50% fixed duty EPWM2A

EPwm2Regs.TBPHS = 0;

// Set Phase register to zero initially

EPwm2Regs.TBCTL.bit.CTRMODE = TB_COUNT_UP;

// Asymmetrical mode

EPwm2Regs.TBCTL.bit.PHSEN = TB_ENABLE;

// Slave module

EPwm2Regs.TBCTL.bit.PRDLD = TB_SHADOW;

 

EPwm2Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_IN;

// sync flow-through

EPwm2Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;

 

EPwm2Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;

 

EPwm2Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO;

// load on CTR=Zero

EPwm2Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO;

// load on CTR=Zero

EPwm2Regs.AQCTLA.bit.ZRO = AQ_SET;

// set actions for EPWM2A

EPwm2Regs.AQCTLA.bit.CAU = AQ_CLEAR;

 

EPwm2Regs.DBCTL.bit.MODE = DB_FULL_ENABLE;

// enable Dead-band module

EPwm2Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC;

// Active Hi complementary

EPwm2Regs.DBFED = 30;

// FED = 30 TBCLKs initially

EPwm2Regs.DBRED = 40;

// RED = 40 TBCLKs initially

//Run Time (Note: Example execution of one run-time instant) //============================================================

EPwm2Regs.TBPHS = 1200-300;

// Set Phase reg to 300/1200 * 360 = 90 deg

EPwm1Regs.DBFED = FED1_NewValue;

// Update ZVS transition interval

EPwm1Regs.DBRED = RED1_NewValue;

// Update ZVS transition interval

EPwm2Regs.DBFED = FED2_NewValue;

// Update ZVS transition interval

EPwm2Regs.DBRED = RED2_NewValue;

// Update ZVS transition interval

EPwm1Regs.CMPB = 200;

// adjust point-in-time for ADCSOC trigger

SPRU791D–November 2004–Revised October 2007

Applications to Power Topologies

91

Image 91
Contents Reference Guide Submit Documentation Feedback Contents Controlling a 3-Phase Interleaved DC/DC Converter List of Figures Event-Trigger Socb Pulse Generator Simplified ePWM Module List of Tables Submit Documentation Feedback Peripheral Guides Related Documentation From Texas InstrumentsData Manuals CPU Users GuidesApplication Reports Tools GuidesTMS320C28x, C28x are trademarks of Texas Instruments TrademarksSubmit Documentation Feedback Introduction Submodule Overview IntroductionMultiple ePWM Modules ∙ Peripheral Bus ∙ PWM output signals EPWMxA and EPWMxB∙ Trip-zone signals TZ1 to TZ6 ∙ ADC start-of-conversion signals EPWMxSOCA and EPWMxSOCBRegister Mapping EPWM Submodules and Critical Internal Signal InterconnectsCounter-Compare Submodule Registers Offset Size NameDescription Time-Base Submodule RegistersEPWM Submodules Submodule Configuration Parameter or Option Submodule Configuration ParametersOverview Tbup Example 2-1. Constant Definitions Used in the Code ExamplesChpenable Purpose of the Time-Base Submodule Time-Base TB SubmoduleTime-Base Submodule Registers Controlling and Monitoring the Time-base SubmoduleRegister ∙ Down-Count Mode Key Time-Base Signals∙ Up-Down-Count Mode ∙ Up-Count Mode∙ Active Register ∙ Time-Base Period Shadow Mode∙ Time-Base Period Immediate Load Mode Time-Base Period Shadow RegisterTime-Base Counter Synchronization Scheme Time-Base Counter SynchronizationEPWM11SYNCO EPWM11SYNCI∙ Software Forced Synchronization Pulse ∙ EPWMxSYNCI Synchronization Input PulseTime-base Counter Modes and Timing Waveforms Phase Locking the Time-Base Clocks of Multiple ePWM ModulesTime-Base Down-Count Mode Waveforms 11. Counter-Compare Submodule Counter-Compare CC SubmoduleRegister Name Address Offset Purpose of the Counter-Compare SubmoduleControlling and Monitoring the Counter-Compare Submodule Counter-Compare Submodule Registers∙ Immediate Load Mode Count Mode Timing WaveformsCounter-Compare Submodule Key Signals ∙ Shadow ModeCTR=CMPB CTR=CMPACTR = Cmpb Purpose of the Action-Qualifier Submodule Action-Qualifier AQ SubmoduleAction-Qualifier Submodule Registers ∙ Toggle Action-Qualifier Submodule Possible Input Events∙ Set High ∙ Clear LowTB Counter equals Actions Action-Qualifier Event Priority Action-Qualifier Event Priority for Up-Down-Count ModeAction-Qualifier Event Priority for Up-Count Mode 10. Action-Qualifier Event Priority for Down-Count ModeWhen using up-count mode to generate an asymmetric PWM Waveforms for Common ConfigurationsUse up-down-count mode to generate a symmetric PWM Use up-down-count mode to generate an asymmetric PWM20. Up-Down-Count Mode Symmetrical Waveform Tbctr Example 2-2. Code Sample for FigureValue EPWMxA EPWMxB Tbclk = Sysclkout Example 2-3. Code Sample for FigureEdgePosA Example 2-4. Code Sample for FigureExample 2-5. Code Sample for Figure Tbctr Example 2-6. Code Sample for FigureEPWMxA EPWMxB Example 2-7. Code Sample for Figure12. Dead-Band Generator Submodule Registers Dead-Band Generator DB SubmodulePurpose of the Dead-Band Submodule Controlling and Monitoring the Dead-Band Submodule∙ Polarity Control ∙ Output Mode ControlOperational Highlights for the Dead-Band Submodule ∙ Input Source Selection13. Classical Dead-Band Operating Modes Mode Description29. Dead-Band Waveforms for Typical Cases 0% Duty 100% FED = Dbfed × Ttbclk RED = Dbred × Ttbclk Dead-Band Delay in μSOperational Highlights for the PWM-Chopper Submodule PWM-Chopper PC SubmodulePurpose of the PWM-Chopper Submodule Controlling the PWM-Chopper Submodule31. PWM-Chopper Submodule Operational Details Waveforms16. Possible Pulse Width Values for Sysclkout = 100 MHz One-Shot PulseOSHTWTHz Period Duty Cycle ControlPurpose of the Trip-Zone Submodule Trip-Zone TZ Submodule∙ Cycle-by-Cycle CBC Controlling and Monitoring the Trip-Zone SubmoduleOperational Highlights for the Trip-Zone Submodule 17. Trip-Zone Submodule RegistersScenario B Example 2-8. Trip-Zone Configurations18. Possible Actions On a Trip Event Scenario aGenerating Trip Event Interrupts 36. Trip-Zone Submodule Mode Control Logic37. Trip-Zone Submodule Interrupt Logic Event-Trigger ET SubmoduleOperational Overview of the Event-Trigger Submodule CTR=CMPB CTRD=CMPB 19. Event-Trigger Submodule Registers41. Event-Trigger Interrupt Generator 42. Event-Trigger Soca Pulse Generator Submit Documentation Feedback Controlling Multiple Buck Converters With Independent Applications to Power TopologiesOverview of Multiple Modules Key Configuration CapabilitiesCTR=0 EPWM1B CTR=CMPB Control of Four Buck Stages. Here FPWM1≠ FPWM2≠ FPWM3≠ FPWM4 Buck Waveforms for -3Note Only three bucks shown here 500 Example 3-1. Configuration for Example in FigureControl of Four Buck Stages. Note FPWM2 = N x FPWM1 Controlling Multiple Buck Converters With Same FrequenciesBuck Waveforms for -5Note FPWM2 = FPWM1 Example 3-2. Code Snippet for Configuration in Figure Control of Two Half-H Bridge Stages FPWM2 = N x FPWM1 Controlling Multiple Half H-Bridge HHB ConvertersHalf-H Bridge Waveforms for -7Note Here FPWM2 = FPWM1 Example 3-3. Code Snippet for Configuration in Figure Controlling Dual 3-Phase Inverters for Motors ACI and PmsmEPWM1A 10 -Phase Inverter Waveforms for -9Only One Inverter Shown Example 3-4. Code Snippet for Configuration in Figure 11. Configuring Two PWM Modules for Phase Control Controlling a 3-Phase Interleaved DC/DC Converter Controlling a 3-Phase Interleaved DC/DC Converter13. Control of a 3-Phase Interleaved DC/DC Converter 14 -Phase Interleaved DC/DC Converter Waveforms for Figure Example 3-5. Code Snippet for Configuration in Figure 15. Controlling a Full-H Bridge Stage FPWM2 = FPWM1 16. ZVS Full-H Bridge Waveforms Example 3-6. Code Snippet for Configuration in Figure Submit Documentation Feedback PWM-Chopper Submodule Control Register Proper Interrupt Initialization ProcedureTrip-Zone Submodule Control and Status Registers Time-Base Counter Register Tbctr Field Descriptions Time-Base Phase Register Tbphs Field DescriptionsTime-Base Submodule Registers Time-Base Period Register Tbprd Field DescriptionsBit Field Value Description Time-Base Control Register Tbctl Field DescriptionsSoftware Forced Synchronization Pulse Time-Base Status Register Tbsts Field Descriptions Counter-Compare Submodule RegistersBit Field Counter-Compare B Register Cmpb Field Descriptions Counter-Compare a Register Cmpa Field DescriptionsBits Name Description Counter-Compare Control Register Cmpctl Field Descriptions Action-Qualifier Submodule RegistersBits Name CBD CBU CAD CAU PRD ZROCBD 10. Action-Qualifier Output B Control Register Aqctlb Rldcsf Rldcsf Otsfb Actsfb Otsfa ActsfaCsfb Csfa Csfb Dead-Band Submodule RegistersInmode Polsel Outmode Inmode Reserved PWM-Chopper Submodule Control Register16. PWM-Chopper Control Register Pcctl Bit Descriptions Name Value DescriptionPWM-Chopper Control Register Pcctl Bit Descriptions Trip-Zone Submodule Control and Status RegistersChpduty CBC6 OSHT6 OSHT5 OSHT4 OSHT3 OSHT2 OSHT1CBC6 CBC5 CBC4 CBC3 CBC2 CBC1 OSHT6OST CBC 18. Trip-Zone Control Register Tzctl Field DescriptionsTZB TZA TZBOST CBC INT 20. Trip-Zone Flag Register Tzflg Field Descriptions21. Trip-Zone Clear Register Tzclr Field Descriptions Event-Trigger Submodule Registers22. Trip-Zone Force Register Tzfrc Field Descriptions 23. Event-Trigger Selection Register Etsel Name Description 24. Event-Trigger Prescale Register Etps Field DescriptionsSocb Soca 24. Event-Trigger Prescale Register Etps Field Descriptions26. Event-Trigger Clear Register Etclr Field Descriptions 25. Event-Trigger Flag Register Etflg Field DescriptionsSocb 27. Event-Trigger Force Register Etfrc Field Descriptions Proper Interrupt Initialization Procedure116 Location Modifications, Additions, and Deletions Table A-1. Changes for Revision DAppendix a Important Notice