请教,中断函数中using m如何使用?

[复制链接]
3743|5
 楼主| 江陵龙少 发表于 2010-5-13 21:25 | 显示全部楼层 |阅读模式
我的理解是:
   使用using m后,原寄存器组,不用进栈出栈,节省了32个时钟周期,但是它要求,中断函数所调用的函数使用的寄存器必须和m一致,在实际编程中,怎么把握这一点?

   如果让我写中断函数,为了简单,我肯定不会加using m参数,作为高手,不知是如何处理的呢?

敬请赐教!
xlsbz 发表于 2010-5-14 20:53 | 显示全部楼层
高手一般是这样处理的。
干脆不知道using m是什么东西。

因为高手有自知之明,高手再高,也没有编译器高!
fkcolor 发表于 2010-5-14 20:56 | 显示全部楼层
不知道是什么函数~~~
xlsbz 发表于 2010-5-14 21:13 | 显示全部楼层
1# 江陵龙少



KEIL 3.4版本之前编程是得用using的。

你想弄using,可以先从普通函数下手。

比如  void xiangnongusing (void) using  2
David_ming 发表于 2010-5-14 22:18 | 显示全部楼层
8051有4组暂存器,using是手动分配寄存器组给中断用,用using关键字可以省掉保存R0-R7的时间,响应更快速
ayb_ice 发表于 2010-5-15 09:06 | 显示全部楼层
使能不使用绝对寄存器即可任意使用using
这样中断函数效率高了,但普通函数却变低了
建议中断不调用任何函数(调用也可以,但设置很麻烦)使用using,使能绝对寄存器访问,这样效率都很高
搞清楚原理当然可以任意使用了
另外using可能浪费RAM,同一优先级的中断可以使用同一寄存器组
总之using**可多了
看资料吧
....
您需要登录后才可以回帖 登录 | 注册

本版积分规则

85

主题

286

帖子

2

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