Professional Documents
Culture Documents
Program Amp Lab
Program Amp Lab
#INCLUDE
<P16F877A.INC>;
ERRORLEVEL 1;-302 ;
__CONFIG _CP_OFF & _CPD_OFF & _LVP_OFF &_XT_OSC & _WDT_OFF
#DEFINE
#DEFINE
#DEFINE
#DEFINE
#DEFINE
#DEFINE
#DEFINE
#DEFINE
SERVO1
SERVO2
SERVO3
SERVO4
SERVO5
SERVO6
SERVO7
SERVO8
PORTD,0
PORTD,1
PORTD,2
PORTD,3
PORTD,4
PORTD,5
PORTD,6
PORTD,7
;
;
;
;
;
;
;
;
SALIDA
SALIDA
SALIDA
SALIDA
SALIDA
SALIDA
SALIDA
SALIDA
SERVO
SERVO
SERVO
SERVO
SERVO
SERVO
SERVO
SERVO
1
2
3
4
5
6
7
8
INICIO
CLRF
CLRF
CLRF
CLRF
D'00000000' ; PORTA
TRISA ; SALIDAS
B'11111111' ; PORTB
TRISB ; ENTRADAS
;*******************************************************************************
****
; PROGRAMA PRINCIPAL
;*******************************************************************************
****
PRINCIPAL
BSF SERVO1
BCF INTCON,T0IF
MOVLW D'192' ; (256-192 = 64) 64 * 8 US = 0,512 MS
MOVWF TMR0 ; VALOR AL REGISTRO DE TIMER
BTFSS INTCON,T0IF
GOTO $-1
BCF INTCON,T0IF ; BORRA EL FLAG DE TIMER
MOVF POSIC,W ; 256-NN X 8 US = 1 MS, 1,5 MS, 2,5 MS
MOVWF TMR0 ; VALOR AL REGISTRO DE TIMER
BTFSS INTCON,T0IF ; ESPERA POR TIMER = FF -> 00
GOTO $-1
BCF SERVO1 ; PONE LA SEAL DE SERVO EN 0
BCF INTCON,T0IF ; BORRA EL FLAG DE TIMER
;-----------------------------------------------------------------------------BSF SERVO2 ; PONE LA SEAL DE SERVO EN 1
BCF INTCON,T0IF ; BORRA EL FLAG DE TIMER