This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F280049:使用 F280049#39;s CMPSS 来实现 CBC 功能

Guru**** 2035740 points
Other Parts Discussed in Thread: LAUNCHXL-F280049C
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/840237/tms320f280049-use-f280049-s-cmpss-to-realize-the-cbc-function

器件型号:TMS320F280049
主题中讨论的其他器件:LAUNCHXL-F280049C

尊敬的团队:

有关 CBC 函数、我有两个问题:

1、我们已经编辑 了一个 CBC 程序参考 F28035的示例程序、它在 LAUNCHXL-F280049C 上运行良好。 但它无法在 自己设计的电路板上工作。  

如果我们禁用 CBC 功能、它可以在我自己的板上正常工作。 可能的原因是什么?

2、当我使用 LAUNCHXL-F280049C 运行程序时、为什么  即使 EPwm1Regs.TZCBCFLG.DCAEVT2 =1且 DCBEVT2=1、它也能有 PWM 输出?

但是、我自己设计的电路板仍然没有输出。

此外、您是否有 任何有关 F280049的 cmpss、X-bar、TZDC、CBC 的示例程序?

以下是我的计划:

// ILA-->A5->CMP2HP
AnalogSubsysRegs.CMPHPMXSEL.bit.CMP2HPMXSEL = 3;

// ILB-->A10->CMP7HP AnalogSubynRegs.CMPMSXSEL.bit.CMP7HPMXSEL = 3;// ILBIN_TRIP






Cmpss2Regs.COMPCTL.bit.COMPHSOURCE








= Cmpss3Regs.COMPCTL.bit.COMPHSOURCE Cmpss2Regs.COMPCTL.bit.CTRIPHSEL Cmpss3Regs.COMPCTL.bit.CTRIPHSEL;Cmpss7Regs.COMPCTL.bit.COMPHSOURCE = CMPSIGN3N = Cmpss7Regs.COMPCTL.bit.CTRIPHSEL;CMPMSGRN =;CMPMSGRN = CMPMRN =;CMPTXN = CMPMRN =;CMPMRN = CMPMRN =;CMPMRN = CMPMRN = CMPMRN =;CMPMRN = CMPMRN =;CMPMRN = CMPMRN = CMPMRN =;CMPMRN = CMPMRN = CMPMRN =;CMPMRN = CMPMRN = CMPMRN = CMPMRN = CMPMRN

Cmpss2Regs.COMPDACCTL.bit.DACSOURCE = 0;// DACVALS

Cmpss2Regs.COMPDACCTL.bit.SELREF = reference_VDDA;

cmps2Regs.DACHVALS.bit.DACVAL = 3050;// Ia:0->1 trip

Cmpss7Regs.COMPDACCTL.bit.DACSOURCE = 0;// DACVALS
Cmpss7Regs.COMPDACCTL.bit.SELREF = reference_VDDA;


cmps7Regs.DACHVALS.bit.HVACLs.Cmpss3Regs.COMPDACCTL.bit.DACSOURCE = 0

;// DACV115-CMUPRS=0 = 0;trip_CMP=0 = 1 = Cmpss3Regs.COMPDACCTL.bit.SELREF

->TRIP4
EPwmXbarRegs.TRIP4MUX0TO15CFG.bit.MUX2 = 1;
EPwmXbarRegs.TRIP4MUXENABLE.bit.MUX2 = 1;

// I115->CMPSS3.CTRIPH--> TRIP7 EPwCMAXCL.BIT.DRESL.1MIPH=1;
/TRIPDCMP4MTRMIPRTRMTRMTRMIPREG2.TRMTRMTRMTRMACL.TRMIPR2MTRMTRMTRMADCL=1






;

= 1
// DCAH =高电平,DCAL =无关//对于 BUCK ILA:0->1 OK
EPwm1Regs.DCACTL.bit.EVT2SRCSEL = DC_EVT2;// DCAEVT2 = DCAEVT2 (未过滤) EPwm1Regs.DCACTL.EVT2SRCSEL = DC_EVT2SRCSEL
= DCAEVT1BUCK


= DCAEVT/ DCBEDRT = DCAEVT1RTE.DC_DCBEDRT =低电平;// DCAECCT1RTE.DC_DCT2.T1RTEL = DCMT = DCBEDRT = DC_DCTL = DCMON.T1RTE.DC_DRT = DCBEPT/ DCTL = DCMONEDCTL ->0 rok
EPwm1Regs.DCBCTL.bit.EVT2SRCSEL = DC_EVT2;
EPwm1Regs.DCBCTL.bit.EVT2FRCSYNCSEL = DC_EVT_SYNC;

EPwm1Regs.TZSEL.bit.DCART2 = 1;/EPwCMP1RCMTR1.TCLR



= EPT2.T1RCMP0


= EPT2.TCLR = EEPWCMP0;EPWCT2 = EPT2.TCLM1RCMT.T1RCMP= EPT2.T1RCMT.TCMP= EPT2.T1RCMP= EPT2.T1RIPDCMT.TCMP= EPT2.T1RCMP= EPT2.T1RCMP= EPT2.TCLR = EPT2.T0;EPWCT2 = EPT2.TCMP= EPT2.T1TRES.T1TRES.T1TREST.T1TREST.T1RCMP= EPT2.T1RCMP= EPT2.T0



->TRIP7
EPwmXbarRegs.TRIP7MUX0TO15CFG.bit.MUX4 = 1;
EPwmXbarRegs.TRIP7MUXENABLE.BIT.MUX4 = 1;

// TRIP5--> DCAH EPwm2Regs.bit.DCCTRIPH=5/ DCMP=DCOTRIPREP.TRENCH=5








;/ DCMP=DCMPT2.TRIPH=DCMP= DCMP= DCMPT2.TRIPH/ DCMP= DCMPT2.TRIPH/ DCMP= DCMP= DCMP= DCMP7 // DCAH =高电平,DCAL =不用考虑降压 ILB:0->1 ok
EPwm2Regs.DCACTL.bit.EVT2SRCEL = DC_EVT2;// DCAEVT2 = DCAEVT2 (未过滤) EPwm2Regs.DCACTL.bit.EVT2SRCEL = DC_EVT2SRCH = DCAEVT2 = DCAEVT/ DCBYST2 (未过滤)
= DCAEVTDCAMBDRT = DCAST_DCAEDRT = DCAEDRVESD1/ DCBEDRT = DCBON.T1/ DCBEDRT = DCBEDRT = DCBEDRT = DCBEDRVH


= DCMON.T1/ DCBEDRT = DCBEDRT = DCMDRT = 0 ok
EPwm2Regs.DCBCTL.bit.EVT2SRCSEL = DC_EVT2;
EPwm2Regs.DCBCTL.bit.EVT2FRCSYNCSEL = DC_EVT_ASYNCH;

EPwm2Regs.TCAL.bit.EPT2.TCB0_RCT2




= DCTRS.EPT2.TCLR = DCTRZEP2RST_EPT2.TCLR;EP_TRTCLR = EPT2.TCLT.TCMTCLR = 0;EPT2.TCLR = EPT2.TCLR = EPT2.TCLR = EPT2.TCLR = EPT2.TCM.TCLR = 0;EP_TCLR = EPT2.TCLR = EP_TCLR = EP_TCMT.TCLR = EP_TCLT.TCM.TCLR = 0;EP_TCLR = EP_TCLT.TCM.TCMT.TCMT.TCMT.TCMT.TCMT. 

此致