共2条
1/1 1 跳转至页
LPC2210,cpsr LPC2210可以在用户模式下修改cpsr吗?
问
LPC2210可以在用户模式下修改cpsr,禁止FIQ、IRQ中断吗?还是一定要进入特权模式才能更改cpsr?
看有关ARM的书好像说要在特权模式下改,比如用swi产生软件中断,在软件中断更改FIQH、IRQ。但在LPC2210的datasheet中没看到相关说明啊! 答 1: re写个汇编代码,使用ads调试时就可以知道在user下是不能改cpsr的,实验教程(2)里有个实验就是验证这个的。 答 2: re我试过的,观察寄存器值是改了,但我的程序总是死机,不知到和这个有没有关系?在ARM2200的例程中禁止中断可是通过swi软件中断来处理的,即先进入了一种软件中断异常模式,然后更改spsr,最后从特权模式退出时,用spsr覆盖cpsr来达到修改cpsr的目的。
看有关ARM的书好像说要在特权模式下改,比如用swi产生软件中断,在软件中断更改FIQH、IRQ。但在LPC2210的datasheet中没看到相关说明啊! 答 1: re写个汇编代码,使用ads调试时就可以知道在user下是不能改cpsr的,实验教程(2)里有个实验就是验证这个的。 答 2: re我试过的,观察寄存器值是改了,但我的程序总是死机,不知到和这个有没有关系?在ARM2200的例程中禁止中断可是通过swi软件中断来处理的,即先进入了一种软件中断异常模式,然后更改spsr,最后从特权模式退出时,用spsr覆盖cpsr来达到修改cpsr的目的。
共2条
1/1 1 跳转至页
我要赚赏金
