[ZLG-MCU] LM3S xxx 如何实现 CLI

[复制链接]
4067|13
 楼主| AIRWILL 发表于 2008-2-29 07:52 | 显示全部楼层 |阅读模式
lm, se
CLI,SEI 关闭和允许中断
zlgmcu 发表于 2008-2-29 09:33 | 显示全部楼层

CLI、SEI是什么?

你指的会不会是CPSIE(使能处理器中断)和CPSID(禁止处理器中断)指令?<br />以下两个《Stellaris驱动库》函数,可实现这两条指令的功能:<br />void&nbsp;IntMasterEnable(void);<br />void&nbsp;IntMasterDisable(void);<br /><br />(zlgmcu_wdx)
 楼主| AIRWILL 发表于 2008-3-1 09:48 | 显示全部楼层

谢谢

查询了执行代码,就一条指令<br /><br />CPSID&nbsp;&nbsp;I&nbsp;&nbsp;&nbsp;&nbsp;(就是cli)<br />CPSIE&nbsp;&nbsp;I&nbsp;&nbsp;&nbsp;&nbsp;(就是sei)
ATmega32L 发表于 2008-3-1 15:50 | 显示全部楼层

如果是IAR

#include&nbsp;&ltintrinsics.h&gt<br /><br />#define&nbsp;sei()&nbsp;__enable_interrupt()<br />#define&nbsp;cli()&nbsp;__disable_interrupt()
hotpower 发表于 2008-3-1 16:27 | 显示全部楼层

哈哈~~~intrinsics.h本身就有__enable_interrupt()

何必老忘不了AVR的sei()和cli()~~~<br /><br />哈哈~~~sei()和cli()一看都是AVR的人~~~
 楼主| AIRWILL 发表于 2008-3-4 22:05 | 显示全部楼层

有点不爽的地方

好象不能嵌入到代码中,&nbsp;这SEI,CLI&nbsp;这么简单的操作也要调用函数来完成.<br /><br />还有对这两条指令不太理解.<br /><br />CPSID&nbsp;&nbsp;I&nbsp;&nbsp;&nbsp;&nbsp;(就是cli)<br />CPSIE&nbsp;&nbsp;I&nbsp;&nbsp;&nbsp;&nbsp;(就是sei)<br /><br />
ATmega32L 发表于 2008-3-5 12:00 | 显示全部楼层

sir(),cli()方便。

__enable_interrupt()<br />__disable_interrupt()<br />CPUcpsie()<br />CPUcpsid()<br /><br />没sei(),cli()方便。
hotpower 发表于 2008-3-6 15:34 | 显示全部楼层

倒塌了~~~非要在IAR上想着WINAVR的写法实在是晕呀~~~

  
 楼主| AIRWILL 发表于 2008-3-9 09:52 | 显示全部楼层

楼上别倒塌

&nbsp;&nbsp;您也是非常追求代码高效的发烧级人物.<br /><br />就简单的这么一个要求,&nbsp;也非得要执行一个子程序调用,&nbsp;不爽吧?&nbsp;
ATmega32L 发表于 2008-3-9 12:11 | 显示全部楼层

编译器不傻

内嵌汇编,内联函数,本征函数调用不会有调用函数开销。<br /><br />编译器不傻,cli(),sei()编译出来代码只有一条指令。
xwj 发表于 2008-3-9 13:30 | 显示全部楼层

呵呵,sei()和cli()打字少啊

其实<br />主要还是LZ用惯了AVR,别的就找不到关键字了:-)<br /><br />换个平台的话要多翻翻它们的头文件哦
hotpower 发表于 2008-3-9 15:52 | 显示全部楼层

晕呀~~~

  
ATmega32L 发表于 2008-3-9 16:41 | 显示全部楼层

IAR EWARM4.42A有一个BUG

IAR&nbsp;EWARM4.42A有一个BUG,<br /><br />就是用软件仿真,显示开中断汇编指令是cpsid&nbsp;i,<br />而关中断是cpsie&nbsp;i.(只是显示错误,实际指令仍然是正确的)<br /><br />
hotpower 发表于 2008-3-9 16:45 | 显示全部楼层

哈哈~~~真没注意~~~

  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

556

主题

17729

帖子

885

粉丝
快速回复 在线客服 返回列表 返回顶部