打印

请教一下:在MSP430定时器A中断时,哪些寄存器里面的内容在

[复制链接]
1324|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Z_J_Q|  楼主 | 2014-7-8 09:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教一下:在MSP430定时器A中断时,哪些寄存器里面的内容在中断中被改变之后退出中断后就不能回到原来的设置?我发现的就是TACTL的设置在中断中改变之后,退出中断其设置就为中断中的设置,而不是主程序中的设置了。

相关帖子

沙发
dirtwillfly| | 2014-7-8 09:52 | 只看该作者
改变了肯定就不是原来的设置了
寄存器对应的是一个实际的物理地址

使用特权

评论回复
板凳
Unshining| | 2014-7-8 10:41 | 只看该作者
任何寄存器(除了部分通用寄存器以外)在主程序中和在中断中改变,不会有任何区别,都是永久性变化。没有什么“中断中的设置”这种说法。。

使用特权

评论回复
地板
Z_J_Q|  楼主 | 2014-7-8 11:17 | 只看该作者
dirtwillfly 发表于 2014-7-8 09:52
改变了肯定就不是原来的设置了
寄存器对应的是一个实际的物理地址

但是一旦退出中断,恢复现场保护后,有些在中断中改变的值又回到了主程序中设置的值了

使用特权

评论回复
5
dirtwillfly| | 2014-7-8 11:48 | 只看该作者
Z_J_Q 发表于 2014-7-8 11:17
但是一旦退出中断,恢复现场保护后,有些在中断中改变的值又回到了主程序中设置的值了 ...

那些是通用寄存器,在进入中断前会压入栈内。退出中断时,出栈回复原来的寄存器的值。

使用特权

评论回复
6
Z_J_Q|  楼主 | 2014-7-11 19:06 | 只看该作者
dirtwillfly 发表于 2014-7-8 11:48
那些是通用寄存器,在进入中断前会压入栈内。退出中断时,出栈回复原来的寄存器的值。 ...

恩恩,问题已经解决了,谢谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

16

帖子

0

粉丝