参考手册:TMS320C28x DSP CPU and Instruction Set Reference Guide
代码位置:Dsp2803x_Device.h
#define EINT asm(" clrc INTM") // INTM 清零,开中断
#define DINT asm(" setc INTM") // INTM 置1, 关中断
#define ERTM asm(" clrc DBGM") // 使能调试事件
#define DRTM asm(" setc DBGM") // 禁止调试事件
#define EALLOW asm(" EALLOW")
#define EDIS asm(" EDIS")
#define ESTOP0 asm(" ESTOP0")
DBGM(Bit1)—Debug enable mask bit.
调试使能屏蔽位
- 0:调试事件被使能
- 1:调试事件被禁止
INTM (Bit 0) —Interrupt global mask bit.
中断全局屏蔽位
- 0:可屏蔽中断被全局使能
- 1:可屏蔽中断被全局禁止
EALLOW (Bit 6) — Emulation access enable bit.
仿真寻址使能位,通过 EALLOW 指令置1,通过 EDIS 指令清零;TI 的DSP一些关键寄存器被做了保护处理,通过设置 EALLOW 的置位与清零,来实现是否对这些寄存器进行操作。当其置位时,可访问操作被保护的寄存器,当其清零时无访问操作权限
由于DSP在上电复位后,状态寄存器基本上都清零,无法对被保护的寄存器进行操作,因此需在操作前使用 EALLOW 将其置位,并在操作完成后使用 EDIS 将其清零。