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

DSP寄存器值设定问题

请问为什么DSP2808在JTAG调试中寄存器没有按照我设定的值变化,比如说执行了语句SysCtrlRegs.LOSPCP.all = 0x003;之后,但是从ccs中读出的寄存器值还是LOSPCP=0x002,也就是说寄存器值没有改变,请问这是什么原因?

Forrest:

改值之前是否有先EALLOW;

请问为什么DSP2808在JTAG调试中寄存器没有按照我设定的值变化,比如说执行了语句SysCtrlRegs.LOSPCP.all = 0x003;之后,但是从ccs中读出的寄存器值还是LOSPCP=0x002,也就是说寄存器值没有改变,请问这是什么原因?

lili liao:

回复 Forrest:

并不是所有的寄存器都要EALLOW吧?

请问为什么DSP2808在JTAG调试中寄存器没有按照我设定的值变化,比如说执行了语句SysCtrlRegs.LOSPCP.all = 0x003;之后,但是从ccs中读出的寄存器值还是LOSPCP=0x002,也就是说寄存器值没有改变,请问这是什么原因?

10#:

回复 lili liao:

楼上,你说得对,并不是所有的寄存器都有EALLOW保护,不过你提到的LOSPCP寄存器倒确实是被EALLOW保护的,见下图注解1。

不过你的问题不在于EALLOW,同见下图LSPCLK位定义部分,该位是可读可写,但读取时都返回0x010也即你看到的002,所以不用担心,只要你确实按照正确的方法写入了,就是成功的,但你读不出来。

请问为什么DSP2808在JTAG调试中寄存器没有按照我设定的值变化,比如说执行了语句SysCtrlRegs.LOSPCP.all = 0x003;之后,但是从ccs中读出的寄存器值还是LOSPCP=0x002,也就是说寄存器值没有改变,请问这是什么原因?

bob iuuiy:

回复 10#:

下面写的是n-value after reset; 是复位以后的值吧,难道每次读取都是复位吗?

赞(0)
未经允许不得转载:TI中文支持网 » DSP寄存器值设定问题
分享到: 更多 (0)