rotacion con adcdocx

2
; 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

Upload: eduardo-ricardo-sainz-palacios

Post on 13-Dec-2015

215 views

Category:

Documents


2 download

DESCRIPTION

Rotacion-con-ADCdocx

TRANSCRIPT

Page 1: Rotacion Con ADCdocx

; 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

Page 2: Rotacion Con ADCdocx

; 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