$NOMOD51
$INCLUDE (8051.MCU)
;====================================================================
ORG 0000H
LJMP INAADC
ORG 0013H ;外部中断 1 的中断服务子程序入口地址。
LJMP PINTI
ORG 2000H
INAADC:SETB IT1 ;是外部中断1中断触发方式选择位,为0是低电平触发,为1是下降沿触发(也就是一个脉冲触发一次有效)。
SETB EA ;总断
SETB EX1 ;外部中断1
MOV DPTR,#3BFFH ;将 数据指针 指向 片外 RAM 地址 #3BFFH
MOVX @DPTR,A ;要占用P0、P2口,输出DPTR中的16位地址。将指针中的内容中的内容复制到累加器A中。
LJMP$ ;原地转移的意思,即死循环。一旦有中断发生,就可以去执行中断程序。
PINTI:MOVX A,@DPTR ;就是先把指针指向#3BFFH ,然后把#3BFFH 地址里的值在传送到累加器A
MOV P1,A ;是将累加器A中的数据传送到p1寄存器,也就是p1端口
RETI
;====================================================================
END
|