汇编语言单片机中断

汇编语言单片机中断,第1张

ORG 00H 开始地址

JMP MAIN跳转到主程序

ORG 03H 外部中断0地址

JMP EXT1跳转

ORG 13H 外部中断1地址

JMP EXT2跳转

MAIN:

MOV IE, #85H 使能中断 0,1

SETB TCON.2边沿触发

SETB TCON.0边沿触发

SJMP $ --没有这一句,程序,自己就去执行中断函数了

EXT1:

MOV P2, #0清0,点亮发光二极管

RETI

EXT2:

MOV P2, #0FFH 置1,关闭

RETI

END

你这是用了一个非常简单程序来说的,就这么几条指令,而且执行到最后是一个SJMP $,即死循环,这一点肯定是永远在执行这一条指令了,那中断时即是从这一条响应中断的,返回时也是返回到这一条了。

可凡事不能以一个简单的特例的结果来概括全面问题,而实际上一个真正的应用程序是不可能有SJMP $指令的,更不可能只有这几条指令,这也不能叫什么程序,只不过是玩几条指令而已。一个真正的程序是很长很长的,单片机是不停地在执行着程序,那什么时候响应中断是未知的,所以,响应中断时执行到哪条指令了,根本就不可能知道的,也不需要知道啊,因为,从哪里响应中断的,中断结束就一定会回到哪里的,这一点都不用怀疑的。

可惜呀,就这么个最简单的特例,也被解释得错了,真是无知呀!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7762122.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存