ORG 00H 主程序入口地址 JMP MAIN ORG 03H 外部中断0入口地址 JMP INT0 MAIN: MOV IE,#10000001B ;INT0中断开通 MOV IP,#00000001B ;INT0中断优先 MOV TCON,#00000000B ;INT0为电频触发 MOV SP,#70H ;设定堆栈指针 LOOP: MOV A,#00H ;主程序设置P1端口灯闪烁 可以自己任意改写 也可不写 LOOP1:MOV P1,A ; ACALL DELAY ; CPL A ; JMP LOOP1 ; INT0: PUSH ACC ;将A值压入堆栈 PUSH PSW ;将PSW值压入堆栈 SETB RS0 ;设定工作寄存器组1 CLR RS1 ; MOV P1,#11111110B ;设置P1.7为低电频 ACALL DELAY ;延时1S 延时可自己控制 POP PSW :从堆栈取回PSW值 POP ACC ;从堆栈取回A值 RETI ;中断返回 DELAY:MOV R5,#50 ;延时1S D1: MOV R6,#100 D2: MOV R7,#100 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET ;返回 END ;程序结束
|