rotacion con adcdocx

Post on 13-Dec-2015

215 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Rotacion-con-ADCdocx

TRANSCRIPT

; CONVERTIDOR ADC 0804 UTILIZANDO WR E INT DEL CONVERTIDOR

WRINT EQU P3.7

;***** RUTINA DE ROTACION

MOV A,#01H

;***** ROTACION IZQ

INICIO: MOV R3,#07

MOV P0, A

MOV R7, A ; Guarda el valor del Acumulador

CALL ADC

CALL COMPARA

CALL DELAY3

MOV A, R7 ; Regresa el valor al Acumulador

LOOP1: RL A

MOV P0, A

MOV R7, A ; Guarda el valor del Aumulador

CALL ADC

CALL COMPARA

CALL DELAY3

MOV A,R7 ; Regresa el valor del Acumulador

DJNZ R3, LOOP1

;***** ROTACION DER

MOV R4,#07

LOOP2: RR A

MOV P0,A

MOV R7,A ; Guarda el valor del Acumulador

CALL ADC

CALL COMPARA

CALL DELAY3

MOV A,R7 ; Regresa el valor del Acumulador

DJNZ R4, LOOP2

JMP INICIO

;***** RUTINA DE ADC PARA EL VALOR DEL PUERTO 1**********

ADC: SETB WRINT

CALL DELAY4

CLR WRINT

MOV R5, P1

SETB WRINT

CALL DELAY4

RET

DELAY4: MOV R6,#51 ; Tiempo minimo para la conversion.

DJNZ R6, $

RET

; TUTINA DE COMPRION DEL VALOR DEL ADC PARA ACTIVAR EL P3.0

COMPARA:MOV R1,#04H

MOV A,R5

SUBB A, R1 ; SI ES MENOR QUE ELDATO ES OSCURO Y SE ACTIVA EL CARRIE

JC NEGA

CLR P3.0 ; SI ESTA CLARO SE APAGA EL PUERTO

RET

NEGA: SETB P3.0 ; SI ESTA OSCURO SE ENCIENDE

RET

;******** RUTINAS DE RETARDO DEPENDIENDO DEL PUERTO 1

DELAY3: MOV R2,P1

SALTO2: CALL DELAY2

DJNZ R2, SALTO2

RET

DELAY2: MOV R1,#20

SALTO1: CALL DELAY1

DJNZ R1, SALTO1

RET

DELAY1: MOV R0,#200

DJNZ R0, $

RET

END

top related