词条 | 单步跟踪两级中断 |
释义 | 单片机C8051F020单步跟踪两级中断(/INT0,/INT1)的程序 $include (c8051f020.inc) ORG 0000H LJMP INIAL ORG 0003H AJMP INTT0 ORG 0013H AJMP INTT1 ORG 0100H INIAL: MOV SP,#40H MOV WDTCN,#0DEH ;禁止看门狗定时器 MOV WDTCN,#0ADH MOV WDTCN,#0DEH MOV XBR0,#00000000B ;设置端口交叉开关寄存器 MOV XBR1,#00010100B ; 交叉开关使能外部中断/INT0和/INT1。 ;/INT0=P0.0;/INT1=P0.1 MOV XBR2,#01000000B ;".6=1"表示交叉开关被允许,此时数据才能出现在P0~P3端口上 MOV P1MDOUT,#11010011B ;0为开漏,1推挽 MOV P2MDOUT,#11000011B ; MOV TCON,#00000000B ;设置为电平触发方式 SETB EX0 SETB EX1 SETB PX1 ;设置外部中断1的优先级为高 SETB EA MOV A, #11111110B ;先让第一个发光二极管亮 LOOP0: CLR P1.0 ;P0.0闪烁 ACALL DELAY SETB P1.0 ACALL DELAY AJMP LOOP0 INTT0: MOV R0,#24 ;p0.0 MOV 0F0H,#0FFH RUN0: MOV P1,0F0H ACALL DELAY DEC 0F0H DJNZ R0,RUN0 MOV P1,#0FH RETI INTT1: MOV R1,#40 ;p0.1 MOV A,#55H RUN1: MOV P4,A ACALL DELAY RR A DJNZ R1,RUN1 MOV P4,#00H RETI DELAY: MOV R0,#10 ;延时1秒子程序,使用参数R0、R7、R6 DELY0: MOV R7,#100 ;延时0.1秒 DELY1: MOV R6,#250 ;延时1mS DJNZ R6,$ DJNZ R7,DELY1 DJNZ R0,DELY0 RET END |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。