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.

[参考译文] CCS/TMS320F2.8379万D:InitPieVectorTable..

Guru**** 2555070 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/633370/ccs-tms320f28379d-initpievecttable

部件号:TMS320F2.8379万D

工具/软件:Code Composer Studio

你好

工作原理...

在 InitPieVectorTable()之后使用EALLOW .........EDIS是否有规则;

我们应该这样做  

我们必须使用EALLOW .....EDIS来执行每一个指令。

InitPieVectorTable();
EALLOW;
PieVectorTable.EPWM1_INT =&epwm1_ISR;
EDIS;
 EALLOW;
CpuSysRegs.PCLKCR0.bit.TBCLKSYNC = 0;
EDIS;
InitEPwm1Example();
EALLOW;
CpuSysRegs.PCLKCR0.bit.TBCLKSYNC = 1;
EDIS;

但我曾经这样做过,我不能面对任何问题

InitPieVectorTable();
EALLOW;
PieVectorTable.EPWM1_INT =&epwm1_ISR;
// EDIS;
// EALLOW;
CpuSysRegs.PCLKCR0.bit.TBCLKSYNC = 0;
//EDIS;
InitEPwm1Example();
//EALLOW;
CpuSysRegs.PCLKCR0.bit.TBCLKSYNC = 1;
EDIS;

请有人 澄清我的疑虑  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,

    正如我在前面的一篇文章中提到的,有些寄存器是受EALLOW保护的。 要写入此类寄存器,必须使用EALLOW指令启用EALLOW。 启用EALLOW后,可使用EDIS指令禁用。 除非使用EDIS,否则启用EALLOW,因此可以写入多个寄存器,这是您在代码中执行的操作,因此它可以正常工作。

    Vivek Singh
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢Vivek
    所以我可以写N号指令(多个寄存器)...
    谢谢你,我现在在学生下面…