AVR 关全局中断的函数cli();的疑问

2019-08-13 20:33发布

void system_set_exec_alarm(uint8_t code) {
  uint8_t sreg = SREG;
  cli();
  sys_rt_exec_alarm = code;
  SREG = sreg;
}
上面的这个函数的意思是不是这样
把状态寄存器的数据保存到sreg这里。
然后关全局中断的函数cli();
变量赋值
还原状态寄存器的值
后面为什么不调用sei();开中断呢?
ARM中怎么才能获得状态寄存器的值呢?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
正点原子
1楼-- · 2019-08-14 00:24
帮顶
xlong_06
2楼-- · 2019-08-14 00:27
表面上看你说的意思是正确的,但是你说关了全局中断,为什么不开,这哪个知道呀,又不知道你干啥。至于ARM怎么获取就要去看相关手册的寄存器了。
Ivanq36
3楼-- · 2019-08-14 01:45
 精彩回答 2  元偷偷看……

一周热门 更多>