Texas Instruments 28xxx Network Router User Manual


 
www.ti.com
TBCTR
EPWMxA
EPWMxB
TBPRD
value
Z
T
Z
T
Z
T
Action-Qualifier(AQ)Submodule
Example2-3.CodeSampleforFigure2-22
//InitializationTime
//========================
EPwm1Regs.TBPRD=600;//Period=601TBCLKcounts
EPwm1Regs.CMPA.half.CMPA=350;//CompareA=350TBCLKcounts
EPwm1Regs.CMPB=200;//CompareB=200TBCLKcounts
EPwm1Regs.TBPHS=0;//SetPhaseregistertozero
EPwm1Regs.TBCTR=0;//clearTBcounter
EPwm1Regs.TBCTL.bit.CTRMODE=TB_UP;
EPwm1Regs.TBCTL.bit.PHSEN=TB_DISABLE;//Phaseloadingdisabled
EPwm1Regs.TBCTL.bit.PRDLD=TB_SHADOW;
EPwm1Regs.TBCTL.bit.SYNCOSEL=TB_SYNC_DISABLE;
EPwm1Regs.TBCTL.bit.HSPCLKDIV=TB_DIV1;//TBCLK=SYSCLKOUT
EPwm1Regs.TBCTL.bit.CLKDIV=TB_DIV1;
EPwm1Regs.CMPCTL.bit.SHDWAMODE=CC_SHADOW;
EPwm1Regs.CMPCTL.bit.SHDWBMODE=CC_SHADOW;
EPwm1Regs.CMPCTL.bit.LOADAMODE=CC_CTR_ZERO;//loadonTBCTR=Zero
EPwm1Regs.CMPCTL.bit.LOADBMODE=CC_CTR_ZERO;//loadonTBCTR=Zero
EPwm1Regs.AQCTLA.bit.PRD=AQ_CLEAR;
EPwm1Regs.AQCTLA.bit.CAU=AQ_SET;
EPwm1Regs.AQCTLB.bit.PRD=AQ_CLEAR;
EPwm1Regs.AQCTLB.bit.CBU=AQ_SET;
//
//RunTime
//========================
EPwm1Regs.CMPA.half.CMPA=Duty1A;//adjustdutyforoutputEPWM1A
EPwm1Regs.CMPB=Duty1B;//adjustdutyforoutputEPWM1B
Figure2-23.Up-Count,PulsePlacementAsymmetricWaveformWithIndependentModulationon
EPWMxA
APWMfrequency=1/((TBPRD+1)×T
TBCLK
)
BPulsecanbeplacedanywherewithinthePWMcycle(0000-TBPRD)
CHightimedutyproportionalto(CMPB-CMPA)
DEPWMxBcanbeusedtogeneratea50%dutysquarewavewithfrequency=1/2×((TBPRD+1)×TBCLK)
Example2-4containsacodesampleshowinginitializationandruntimeforthewaveformsFigure2-23.
UsethecodeinExample2-1todefinetheheaders.
SPRU791DNovember2004RevisedOctober2007ePWMSubmodules45
SubmitDocumentationFeedback