TI中文支持网
TI专业的中文技术问题搜集分享网站

EALLOW; EDIS;指令可以在CLA代码内执行吗

HI:

问题如题,谢谢。

Green Deng:

可以的,cla.c中就有用到


EALLOW;//// Write trigger selection to the appropriate register.//HWREG(srcSelReg) &= ~((uint32_t)SYSCTL_CLA1TASKSRCSEL1_TASK1_M<< shiftVal);HWREG(srcSelReg) = HWREG(srcSelReg) | ((uint32_t)trigger << shiftVal);EDIS;

Aiden:

回复 Green Deng:

在这个路径下D:\ti\c2000\C2000Ware_2_01_00_00\driverlib\f28004x\driverlib的cpu.h文件内可以看到这段代码:
//
// Define to allow writes to protected registers
//
#ifndef EALLOW
#ifndef __TMS320C28XX_CLA__
#define EALLOW __eallow()
#else
#define EALLOW __meallow()
#endif // __TMS320C28XX_CLA__
#endif // EALLOW

//
// Define to disable writes to protected registers
//
#ifndef EDIS
#ifndef __TMS320C28XX_CLA__
#define EDIS__edis()
#else
#define EDIS__medis()
#endif // __TMS320C28XX_CLA__
#endif // EDIS

意思是说CPU和CLA执行的EALLOW和EDIS指令实际上是对应不同的接口吗?为什么有不同的宏定义?如果我在CPU内和CLA内都需要操作EALLOW和EDIS指令要怎样操作呢?

Green Deng:

回复 Aiden:

没了解过这方面的区别。你是在CLA里使用这两个指令有问题吗?

赞(0)
未经允许不得转载:TI中文支持网 » EALLOW; EDIS;指令可以在CLA代码内执行吗
分享到: 更多 (0)