打印

哪些寄存器里面的内容在中断中被改变之后退出中断后就不能回到原来的设置?

[复制链接]
1835|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jiahy|  楼主 | 2017-1-31 20:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
spark周| | 2017-1-31 20:41 | 只看该作者
什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
jiahy|  楼主 | 2017-1-31 20:45 | 只看该作者
我发现的就是TACTL的设置在中断中改变之后,退出中断其设置就为中断中的设置,而不是主程序中的设置了。

使用特权

评论回复
地板
zhaoxqi| | 2017-1-31 20:47 | 只看该作者
改变了肯定就不是原来的设置了

使用特权

评论回复
5
zhanghqi| | 2017-1-31 20:48 | 只看该作者
寄存器对应的是一个实际的物理地址

使用特权

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

使用特权

评论回复
7
jiahy|  楼主 | 2017-1-31 20:52 | 只看该作者
但是一旦退出中断,恢复现场保护后,有些在中断中改变的值又回到了主程序中设置的值了

使用特权

评论回复
8
zhenykun| | 2017-1-31 20:59 | 只看该作者
那些是通用寄存器,在进入中断前会压入栈内。退出中断时,出栈回复原来的寄存器的值。

使用特权

评论回复
9
jiahy|  楼主 | 2017-1-31 21:01 | 只看该作者
搞定了,呵呵,犯了低级错误……结贴啦,多谢各位

使用特权

评论回复
10
dzfansman| | 2017-2-1 21:27 | 只看该作者
说明定时器中断优先执行了吗

使用特权

评论回复
11
dzfansman| | 2017-2-1 21:30 | 只看该作者
用的不是堆栈吗?

使用特权

评论回复
12
htmlme| | 2017-2-2 22:14 | 只看该作者
你不是设置的堆栈里面的吗

使用特权

评论回复
13
htmlme| | 2017-2-2 22:17 | 只看该作者
这个中断程序来看一下。

使用特权

评论回复
14
pmp| | 2017-2-4 22:22 | 只看该作者
没有看明白,你说的是堆栈吗?

使用特权

评论回复
15
pmp| | 2017-2-4 22:27 | 只看该作者
所有中断程序执行的操作过的都不能恢复原来的状态了。

使用特权

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

本版积分规则

862

主题

9861

帖子

4

粉丝