$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
|