51单片机的中断源入口地址是程序存储器空间的5个单元

程序存储器低端的一些地址被固定地用作特定程序的入口地址:
(1) 0000H——单片机复位后的程序入口地址。
(2) 0003H——外部中断 0 的中断服务子程序入口地址。
(3) 000BH——定时/计数器 0 的中断服务子程序入口地址。
(4) 0013H——外部中断 1 的中断服务子程序入口地址。
(5) 001BH——定时/计数器 1 的中断服务子程序入口地址。
(6) 0023H——串行口的中断服务子程序入口地址。
(7) 002BH——定时器 2 的中断服务子程序入口地址。
编程时,通常在这些入口地址开始的二三个单元中,放入一条转移指令,以使相应的
服务与实际分配的程序存储器区域中的程序段相对应(仅在中断服务子程序较短时,才可以
将中断服务子程序直接放在相应的入口地址开始的几个单元中)。
复位后,程序计数器 PC 为 0000H,即从程序存储器的 0000H 单元读出第一条指令,
因此可在 0000H 单元内放置一条跳转指令,如 LJMP ××××(××××表示主程序入口
地址)。由于系统给每一个中断服务子程序预留了 8 个字节,因此,用户主程序一般存放在
www.bzfxw.com
第 1 章 MCS-51 系列单片机基础 ·21·
·21·

0033H 单元以后,如:
ORG 0000H
;用伪指令 ORG 指示随后的指令码从 0000H 单元开始存放
LJMP Main ;在 0000H 单元放一条长跳转指令,共 3 个字节
ORG 0003H
LJMP INT0
;跳到外部中断 0 服务子程序的入口地址
ORG 000BH
LJMP T0
;跳到定时/计数器 0 中断服务子程序入口地址
ORG 0013H
LJMP INT1
;跳到外部中断 1 服务子程序的入口地址
ORG 001BH
LJMP T1
;跳到定时/计数器 1 中断服务子程序入口地址
ORG 0023H
LJMP SIO
;跳到串行口中断服务子程序入口地址
ORG 002BH
LJMP T2
;跳到定时/计数器 2 中断服务子程序入口地址
ORG 0033H ;主程序代码从 0033H 单元开始存放
Main:... ;Main 是主程序入口地址标号


 

发布了110 篇原创文章 · 获赞 119 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/qq_25814297/article/details/105377688