项目为使用中断系统使主程序P0口进行花样显示,晶振选用12mhz。 显示规律为: 1) P0口接8个LED依次左移闪亮; 2) 当按下INT1时,8个LED依次右移闪亮; 3) 当按下INT0时,8个灯闪亮5次 1.流程图
2.部分源程序 - ORG 0000H
- AJMP START
- ORG 0003H
- AJMP INTR0
- ORG 0013H
- AJMP INTR1
- START:MOV IE,#85H
- MOV IP,#01H
- MOV TCON,#00H
- MOV SP,#60H
- MOV P0,#0FFH
- MOV P3,#0FFH
- MOV A,#0FEH
- LP1:MOV P0,A
- RL A
- LCALL DELAY
- SJMP LP1
- INTR0:PUSH ACC
- PUSH PSW
- MOV R1,#10
- MOV A,#00H
- XH: MOV P0,A
- LCALL DELAY
- CPL A
- DJNZ R1,XH
- POP PSW
- POP ACC
- RETI
- INTR1:PUSH ACC
- PUSH PSW
- MOV A,#7FH
- MOV R2,#16
- XH1:MOV P0,A
- LCALL DELAY
- RR A
- DJNZ R2,XH1
- POP PSW
- POP ACC
- RETI
- DELAY: MOV R7,#20
- DELAY1:MOV R6,#20
- DELAY2:MOV R5,#248
- DJNZ R5,$
- DJNZ R6,DELAY2
- DJNZ R7,DELAY1
- RET
- END
复制代码3.仿真调试 略有2s延迟。
全部资料51hei下载地址:
51单片机控制8个小彩灯花样闪烁.zip
(51.12 KB, 下载次数: 28)
|