; 인터럽터 실험2 ~ EXTERNAL INTERRUPT
ORG 8000H
MAIN: MOV SP,#40H
SETB PX0 ; 외부 인터럽터 우선순위 SET
SETB EX0 ; 외부 인터럽터0 인에이블
SETB IT0 ; Edge Trigger MODE
SETB EA ; 전체 인터럽터 인에이블
LOOP: MOV A,#10101010B
MOV P1,A
CALL DELAY
CPL A
MOV P1,A
CALL DELAY
JMP LOOP
SERVICE: MOV A,#01111111B ; 누산기를 초기화.
LOOPS: CALL DELAY
CALL DELAY
MOV P1,A ; 한개의 LED에 불이 들어 온다.
RR A ; 다음 LED 로 이동
CJNE A,#01111111B,LOOPS
RETI
DELAY: MOV R0,#0FFH
DELAY1: MOV R1,#0FFH
DELAY2: DJNZ R1,DELAY2
DJNZ R0,DELAY1
RET
ORG 9F03H
JMP SERVICE
END
'Technology > Embedded' 카테고리의 다른 글
8051 / win8051 Program (0) | 2010.01.16 |
---|---|
8051 source code / Interupt를 이용한 LED 실험 (0) | 2009.12.05 |
8051 source code / Timer interrupt를 이용한 counter (0) | 2009.12.05 |
8051 source code / Timer counter mode2를 이용한 실험 (0) | 2009.12.05 |
8051 source code / Timer counter mode를 이용한 LDE 제어 (0) | 2009.12.05 |