Red de conocimiento informático - Computadora portátil - 51 Microcontrolador, escribe un programa en lenguaje ensamblador para contar pulsos externos y calcular la frecuencia de pulsos externos en 10 segundos. Pídale a un experto que escriba el programa.

51 Microcontrolador, escribe un programa en lenguaje ensamblador para contar pulsos externos y calcular la frecuencia de pulsos externos en 10 segundos. Pídale a un experto que escriba el programa.

ORG 0000H

LJMP PRINCIPAL

ORG 000BH

LJMP T0ISR

ORG 0030H

PRINCIPAL:

MOV TMOD, #51H

MOV TH0, #ALTO(65536-50000)

MOV TL0, #BAJO(65536-50000)

MOV TH1, #0

MOV TL1, #0

SETB TR0

SETB TR1

SETB ET0

SETB EA

CLR A

MOV R2, #0

BUCLE:

SJMP $

T0ISR :

CLR TR0

MOV TH0, #ALTO(65536-50000)

MOV TL0, #BAJO(65536-50000)

SETB TR0

INC A

CJNE A, #20, T0E

MOV A, #0

INC R2

CJNE R2, #10, T0E

MOV R2, #0

MOV R1, TH1<

MOV R0, TL1

MOV B, #10

LCALL DIV16

MOV P1, R0

T0E:

RETI

; R1: R0/B=R1: R0

DIV16:

MOV R7 R1: R0/B=R1:R0

DIV16: p>

MOV R7, #08H

MOV R7, #08H

MOV B, #6

DIV1:

CLR C

MOV A, R0

RLC A

MOV R0, A

MOV A, R1

RLC A

MOV R1, A

CLR C

SUBB A, B

JC DIV2

MOV R1, A

INC R7

DIV2:

DJNZ R7, DIV1

RET

FIN