并没有清除PIEACK寄存器的第0位

2019-07-19 16:12发布

说明书上看到,如PIE Interrupt Acknowledge Register (PIEACK) Register (Address 0xCE1)

在中断中,为了清除中断响应标志,就使用:
                ;PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
                MOVW        DP, #0x0ce1
                MOV                @0x0ce1, #1

语句中的第一行是对应的C语言时的使用方法。

然而,发现并没有清除PIEACK寄存器的第0位。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
liliang9554
1楼-- · 2019-07-19 19:55
然后呢?你是怎么应对这个的呢
wuhany
2楼-- · 2019-07-19 20:04
而在调试时查看C语言对应的汇编代码,是对0x33操作:
    MOVW         DP, #0x33
    MOVB         @0x21, #0x01, UNC

在反汇编窗口查看其它PIE寄存器,也也是这个区域,这是为什么?
zhanghqi
3楼-- · 2019-07-19 22:19
还是C简单易懂。现在用的也多。汇编不懂,帮顶了!
wuhany
4楼-- · 2019-07-20 02:49
 精彩回答 2  元偷偷看……
wengh2016
5楼-- · 2019-07-20 05:24
汇编语言吗?
wengh2016
6楼-- · 2019-07-20 10:20
你这是什么处理器的?

一周热门 更多>