找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2238|回复: 1
收起左侧

单片机菜鸟,望大神指点!

[复制链接]
ID:49921 发表于 2013-5-2 19:30 | 显示全部楼层 |阅读模式
ORG 000H
LJMP START
ORG 000BH
LJMP TO_ISR
START: MOV TMOD,#11H
MOV TH0,#0DBH
MOV TL0,#0FFH
CLR TF0
SETB TR0
SETB ET0 ;T0中断允许位
SETB EA ;中断允许控制位
LOOP: SJMP LOOP
TO_ISR: CLR TF0
MOV TH0,#0DBH
MOV TL0,#0FFH
RETI
END
这是个定时中断程序,想问下大神,这个程序是不是执行LOOP:SJMP LOOP后
跳转到ORG 000BH进入中断程序?那么执行完TO—ISR程序碰到RETI后是不是
又返回LOOP:SJMP LOOP执行呢?若不是,返回的是哪个位置呢?谢谢解答!
回复

使用道具 举报

ID:7485 发表于 2013-5-2 21:06 | 显示全部楼层

第二个问题是对的。第一个问题不对。

 

中断,顾名思义,不管你的程序运行在哪儿,一旦发生中断(包括各种中断源),就会暂停下正在执行的程序,转去执行中断服务程序(比如你的T0_ISR   !注意只能是下划线!)。

 

当执行完中断服务程序,也就是到“RETI”处,再回到刚才暂停处继续向下运行。至于怎么回到原来暂停处的你暂时可以不去管它。知道是由硬件来实现的就可以了。

回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表