Ir ao conteúdo

Problemas com 8051 (89s52)


leaokrollew

Posts recomendados

Postado

Boa tarde

Eu programo no 89s52 ja faz alguns anos usando principalmente portas de I/O.

Já venho tentando alguns dias fazer um programa que é estão simples de tudo só para testar um projeto, mas não sei o que está acontecendo que não da certo.:mad:

o programa tem que acender 4 leds quando se aperta um botão ai dar um tempo depois apagar os 4 leds e voltar a acender quando apertar o botão novamente. Simples de tudo !!!

o programa q fiz é esse :



LED1 EQU P1.0
LED2 EQU P1.1
LED3 EQU P1.2
LED4 EQU P1.3
LIGA EQU P2.0

ORG 0
JMP COMECO

COMECO: JNB LIGA,INICIO
MOV P1,#0
JNB LIGA,INICIO
MOV P3,#0
JNB LIGA,INICIO
JMP COMECO



INICIO: SETB LED1
SETB LED2
SETB LED3
SETB LED4
ACALL DELAY
ACALL DELAY
ACALL DELAY
CLR LED1
CLR LED2
CLR LED3
CLR LED4
JMP COMECO


DELAY: MOV R7,#0FFH
L1: MOV R6,#0FFH
L2: DJNZ R6, L2
DJNZ R7, L1
RET

END





Bom quando coloca ele na placa pra testar ele só acende o ultimo led e os outros 3 da uma piscada muito rapida q quase não da pra ver que acendeu.


Se liga na loucura ja fiz projetos um pouco mais elaborados como esse aqui por ex:


$MOD51
;######################################################################################
; BIBLIOTECA DAS LETRAS
;######################################################################################
LED1 EQU P1.0
LED2 EQU P1.1
LED3 EQU P1.2
LED4 EQU P1.3
LED5 EQU P1.4
LED6 EQU P1.5
LED7 EQU P1.6
LED8 EQU P3.0
LED9 EQU P3.1
LED10 EQU P3.2
LED11 EQU P3.3
LED12 EQU P3.4
LED13 EQU P3.5
LED14 EQU P3.6
LIGA EQU P2.0
SENSOR EQU P2.7

ORG 0
JMP COMECO
COMECO: JNB LIGA,REFERENCIA
MOV P1,#0
JNB LIGA,REFERENCIA
MOV P3,#0
JNB LIGA,REFERENCIA
JMP COMECO

REFERENCIA:JNB SENSOR,TEXTO ;ESCRITA
JMP REFERENCIA


TEXTO:ACALL LETRAM
ACALL LETRAO
ACALL LETRAV
ACALL LETRAE
ACALL DELAY
ACALL DELAY
ACALL LETRAO
ACALL LETRAV
ACALL LETRAE
ACALL LETRAR
JMP REFERENCIA

LETRAA:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL DELAY
CLR LED1
CLR LED4
SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAB:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED5
CLR LED6
ACALL DELAY
CLR LED1
CLR LED4
CLR LED7
SETB LED2
ACALL TEMPO1
CLR LED2
ACALL TEMPO1
SETB LED3
SETB LED4
ACALL TEMPO1
CLR LED3
ACALL TEMPO1
CLR LED4
ACALL TEMPO1
SETB LED7
ACALL TEMPO1
CLR LED7
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED5
ACALL TEMPO1
CLR LED5
ACALL DELAY
ACALL TEMPO1
RET



LETRAC:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
ACALL DELAY
ACALL DELAY
CLR LED1
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAD:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
ACALL DELAY
ACALL TEMPO1
CLR LED1
CLR LED7
ACALL DELAY
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
ACALL DELAY
ACALL TEMPO1
RET

LETRAE:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED5
CLR LED6
ACALL DELAY
CLR LED4
ACALL TEMPO1
ACALL TEMPO1
CLR LED1
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAF:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL DELAY
CLR LED4
ACALL DELAY
CLR LED1
ACALL DELAY
ACALL TEMPO1
RET

LETRAG:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
ACALL DELAY
ACALL TEMPO1
SETB LED4
ACALL DELAY
ACALL DELAY
CLR LED4
CLR LED1
CLR LED7
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
CLR LED4
ACALL DELAY
ACALL TEMPO1
RET

LETRAH:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL DELAY
CLR LED4
SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAI: SETB LED1
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAJ:SETB LED1
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED5
CLR LED6
ACALL DELAY
ACALL DELAY
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
CLR LED1
ACALL DELAY
ACALL TEMPO1
RET

LETRAK:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED1
ACALL TEMPO1
CLR LED1
SETB LED7
ACALL TEMPO1
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAL: SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
ACALL DELAY
ACALL DELAY
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAM:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
SETB LED1
ACALL TEMPO1
CLR LED1
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED4
ACALL TEMPO1
CLR LED4
ACALL DELAY
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED1
ACALL TEMPO1
CLR LED1
ACALL TEMPO1
CLR LED1
SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAN:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
SETB LED1
ACALL TEMPO1
CLR LED1
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED7
ACALL TEMPO1
CLR LED7
SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAO:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
ACALL DELAY
ACALL DELAY
CLR LED1
CLR LED7
SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAP:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL DELAY
CLR LED1
CLR LED4
SETB LED1
SETB LED2
SETB LED3
SETB LED4
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
ACALL DELAY
ACALL TEMPO1
RET

LETRAQ:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
ACALL DELAY
ACALL DELAY
SETB LED8
ACALL TEMPO1
CLR LED8
ACALL DELAY
SETB LED9
ACALL TEMPO1
CLR LED9
CLR LED1
CLR LED7
ACALL TEMPO1
CLR LED4
SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAR:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
CLR LED1
ACALL DELAY
CLR LED4
SETB LED2
SETB LED3
ACALL TEMPO1
ACALL TEMPO1
CLR LED2
CLR LED3
ACALL TEMPO1
SETB LED5
ACALL TEMPO1
CLR LED5
ACALL TEMPO1
SETB LED6
ACALL TEMPO1
CLR LED6
ACALL TEMPO1
SETB LED7
ACALL TEMPO1
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAS:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
ACALL DELAY
ACALL DELAY
CLR LED1
CLR LED4
CLR LED5
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAT:SETB LED1
ACALL DELAY
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
CLR LED1
ACALL DELAY
ACALL TEMPO1
RET

LETRAU:SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
ACALL DELAY
ACALL DELAY
CLR LED7
SETB LED1
SETB LED2
SETB LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED1
CLR LED2
CLR LED3
CLR LED4
CLR LED5
CLR LED6
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

LETRAV:SETB LED1
ACALL TEMPO1
CLR LED1
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED7
ACALL TEMPO1
CLR LED7
SETB LED7
ACALL TEMPO1
CLR LED7
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED1
ACALL TEMPO1
CLR LED1
ACALL DELAY
ACALL TEMPO1
RET

LETRAW:SETB LED1
ACALL TEMPO1
CLR LED1
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED7
ACALL TEMPO1
CLR LED7
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED1
ACALL TEMPO1
CLR LED1
SETB LED1
ACALL TEMPO1
CLR LED1
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED7
ACALL TEMPO1
CLR LED7
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED1
ACALL TEMPO1
CLR LED1
ACALL DELAY
ACALL TEMPO1
RET

LETRAX:SETB LED1
ACALL TEMPO1
CLR LED1
SETB LED7
ACALL TEMPO1
CLR LED7
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED7
ACALL TEMPO1
CLR LED7
SETB LED1
ACALL TEMPO1
CLR LED1
ACALL DELAY
ACALL TEMPO1
RET

LETRAY:SETB LED1
ACALL TEMPO1
CLR LED1
ACALL TEMPO1
SETB LED2
ACALL TEMPO1
CLR LED2
ACALL TEMPO1
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED4
SETB LED5
SETB LED6
SETB LED7
ACALL TEMPO1
CLR LED4
CLR LED5
CLR LED6
CLR LED7
SETB LED3
ACALL TEMPO1
CLR LED3
ACALL TEMPO1
SETB LED2
ACALL TEMPO1
CLR LED2
ACALL TEMPO1
SETB LED1
ACALL TEMPO1
CLR LED1
ACALL DELAY
ACALL TEMPO1
RET

LETRAZ:SETB LED1
ACALL DELAY
ACALL DELAY
CLR LED1
SETB LED6
ACALL TEMPO1
CLR LED6
SETB LED5
ACALL TEMPO1
CLR LED5
SETB LED4
ACALL TEMPO1
CLR LED4
SETB LED3
ACALL TEMPO1
CLR LED3
SETB LED2
ACALL TEMPO1
CLR LED2
SETB LED7
ACALL DELAY
ACALL DELAY
CLR LED7
ACALL DELAY
ACALL TEMPO1
RET

TEMPO1: MOV R7,#006H
L3: MOV R6,#006H
L4: DJNZ R6, L4
DJNZ R7, L3
RET

DELAY: MOV R7,#00FH
L1: MOV R6,#00FH
L2: DJNZ R6, L2
DJNZ R7, L1
RET

END
$MOD51

E se eu jogar esse segundo programa no MC ele roda perfeitamente.

Outra coisa que notei é que ele só fica maluco quando peço pra acender 2 ou mais leds ao mesmo tempo . Caso eu faça por ex uma sequência do tipo onde o led anterior apague para que o próximo acenda ai funciona normal.

Das coisas que ja testei foram : Tocar o MC, Trocar para outra placa de testes , Trocar de pc . Só n troquei o gravador porque não tenho como, mas se ele esta gravando os outros programas como aquele segundo que escrevi aqui, e esta funcionando eu creio que não seja ele.

Uso o context pra assembler e o isp-pgm pra gravar no MC

Preciso de ajuda :) e obrigado

Postado

mano eu manjo muito pouco de programação assembly, pois estou sem tempo pra estudar...

da uma olhada ai..


$MOD51

LED1 EQU P1.0
LED2 EQU P1.1
LED3 EQU P1.2
LED4 EQU P1.3
LIGA EQU P2.0

ORG: 0

COMECO:
JNB LIGA,COMECO
CLR LIGA
MOV P1,#0
MOV P3,#0
ORG: INICIO

INICIO:
SETB LED1
SETB LED2
SETB LED3
SETB LED4
ACALL DELAY
ACALL DELAY
ACALL DELAY
CLR LED1
CLR LED2
CLR LED3
CLR LED4
JMP COMECO

DELAY: MOV R7,#0FFH
L1: MOV R6,#0FFH
L2: DJNZ R6, L2
DJNZ R7, L1
RET

END

alterei apenas a parte do botão...

Falou...

Postado

Olá Phenom_X4 Obrigado por me ajuda.

Então eu coloquei o programa que você escreveu e ele esta com 4 erros

[COLOR="DarkRed"]

1 $MOD51
2
0090 3 LED1 EQU P1.0
0091 4 LED2 EQU P1.1
0092 5 LED3 EQU P1.2
0093 6 LED4 EQU P1.3
00A0 7 LIGA EQU P2.0
8
9 ORG: 0
****------------------------^----^
****ERROR #3: Duplicate symbol
****ERROR #7: Illegal opcode/directive after label
10
0000 11 COMECO:
0000 30A0FD 12 JNB LIGA,COMECO
0003 C2A0 13 CLR LIGA
0005 759000 14 MOV P1,#0
0008 75B000 15 MOV P3,#0
16 ORG: INICIO
****--------------------------------^----^
****ERROR #3: Duplicate symbol
****ERROR #7: Illegal opcode/directive after label
17
000B 18 INICIO:
000B D290 19 SETB LED1
000D D291 20 SETB LED2
000F D292 21 SETB LED3
0011 D293 22 SETB LED4
0013 1123 23 ACALL DELAY
0015 1123 24 ACALL DELAY
0017 1123 25 ACALL DELAY
0019 C290 26 CLR LED1
001B C291 27 CLR LED2
001D C292 28 CLR LED3
001F C293 29 CLR LED4
0021 80DD 30 JMP COMECO
31
0023 7FFF 32 DELAY: MOV R7,#0FFH
0025 7EFF 33 L1: MOV R6,#0FFH
0027 DEFE 34 L2: DJNZ R6, L2
0029 DFFA 35 DJNZ R7, L1
002B 22 36 RET
37
38 END

VERSION 1.2h ASSEMBLY COMPLETE, 4 ERRORS FOUND

ERROR SUMMARY:
Line #9, ERROR #3: Duplicate symbol
Line #9, ERROR #7: Illegal opcode/directive after label
Line #16, ERROR #3: Duplicate symbol
Line #16, ERROR #7: Illegal opcode/directive after label
W PAGE 2

COMECO . . . . . . . . . . . . . C ADDR 0000H
DELAY. . . . . . . . . . . . . . C ADDR 0023H
INICIO . . . . . . . . . . . . . C ADDR 000BH NOT USED
L1 . . . . . . . . . . . . . . . C ADDR 0025H
L2 . . . . . . . . . . . . . . . C ADDR 0027H
LED1 . . . . . . . . . . . . . . NUMB 0090H
LED2 . . . . . . . . . . . . . . NUMB 0091H
LED3 . . . . . . . . . . . . . . NUMB 0092H
LED4 . . . . . . . . . . . . . . NUMB 0093H
LIGA . . . . . . . . . . . . . . NUMB 00A0H
P1 . . . . . . . . . . . . . . . D ADDR 0090H PREDEFINED
P2 . . . . . . . . . . . . . . . D ADDR 00A0H PREDEFINED
P3 . . . . . . . . . . . . . . . D ADDR 00B0H PREDEFINED [/COLOR]

mas isso não era problema para eu resolver e fiz as mudanças pra poder funcionar.

Feito isso o programa quando roda só acende o led 4 e apaga n acontece mais nada e o botao n faz nada tambem .

Eu acredito que o problema não seja o acionamento do botão

Postado

Olá mano..

corrigi os errinhos aqui e compilou normal no 8051IDE...


LED1 EQU P1.0
LED2 EQU P1.1
LED3 EQU P1.2
LED4 EQU P1.3
LIGA EQU P2.0

ORG 0H
MOV P1,#0
CLR LIGA

COMECO:
JNB LIGA,COMECO
CLR LIGA
MOV P1,#0
MOV P3,#0

INICIO:
SETB LED1
SETB LED2
SETB LED3
SETB LED4
ACALL DELAY
ACALL DELAY
ACALL DELAY
CLR LED1
CLR LED2
CLR LED3
CLR LED4
JMP COMECO

DELAY: MOV R7,#0FFH
L1: MOV R6,#0FFH
L2: DJNZ R6, L2
DJNZ R7, L1
RET

END

testecdh2.jpg , testecdh1.jpg , testecdh.jpg

Falou...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!