求一个完整的AT89C51单片机LED控制程序,汇编语言的

2024-11-01 11:34:30
推荐回答(2个)
回答1:

ORG 00H

AJMP MAIN

ORG 13H

AJMP EX1INT

ORG 0030H


 

MAIN:

MOV P1,#0

SETB EA

SETB EX1

SETB IT1

 

MAIN1:

MOV P1,A 

AJMP    MAIN1


 

EX1INT:

INC A

CJNE A,#0,RTI

MOV A,#0

RTI:

RETI


 

 

END 

回答2:

按照楼主的电路,下列程序就可以达到加一的效果。

ORG 0000H
SJMP MAIN
ORG 0013H
SJMP X1_INT
ORG 0030H
MAIN:
SETB IT1
SETB EX1
SETB EA
MOV A, #255
SJMP $ ;等待中断

X1_INT:
DEC A ;减一,相当于加一
MOV P1, A ;因为是低电平发光
;---------------下面延时约2ms
DJNZ R7, $
DJNZ R7, $
DJNZ R7, $
DJNZ R7, $
RETI ;返回
END