No se que estoy haciendo mal pero no funciona, no se si sera el programador (minipic con el IC-prog) que lo estoy conectando mal porque yo le quite la base de tierra y lo estoy conectando directamente a el chacis de la pc por el puerto serial COM1, cuando lo conecto enciende el led rojo, y cuando supuestamente lo estoy programando parpadea el led verde, inclusive le doy a leer todo por el IC-prog y me aparece un codigo que asumo yo que es el programa que esta en el pic, por supuesto una vez que lo programo.
El programa esta aparentemente bien porque se emsambla sin errores, incluso le cambie el pin de salida para el puerto B para descartar errores con el mismo, porque anteriormente tenia entrada y salida por el puerto A, el circuito lo que tiene que hacer es que cuando reciba un uno por el RA3 (pin 2) coloque un uno en el RB3 y lo mantenga por 10 segundos. es bastante sencillo y aun no entiendo porque no funciona.
Envio el programa modificado para ver si alguien me puede dar una mano
LIST P=16F628A
#INCLUDE<P16F628A.INC>
CONTA1 equ 0ch ;VARIABLES
CONTA2 equ 0dh
CONTA3 equ 0eh
jean equ 0fh
ORG 00H
GOTO INICIO
INICIO:
BSF STATUS,5 ;BANCO 1
CLRF TRISB ;PUERTO B SALIDAS TODAS
movlw b"00001111"
movwf TRISA ;PUERTO A 4ENTRADAS (RA0-RA3)
BCF STATUS,5 ;BANCO 0
CLRF PORTB
CLRF PORTA
CICLO: BTFSS PORTA,3 ;PRUEBA EL PIN RA3 Y SALTA SI ES 1
GOTO CICLO ;SALTA A LA ETIQUETA CICLO
BSF PORTB,3 ;COLOCA 1 EN EL PIN RB3
movlw .20
movwf jean
vuelta: CALL RETARDO ;LLAMA A SUBRUTINA RETARDO 20 veces
decfsz jean,1
goto vuelta
CLRF PORTA ;LIMPIA EL PUERTO A
GOTO CICLO ;SALTA A LA ETIQUETA CICLO
;*****************************************************************
;* RUTINA DE RETARDO
;*****************************************************************
RETARDO MOVLW 0X32 ;CARGA W CON LA CONSTANTE 32H
MOVWF CONTA3 ;CARGA CONTA3 CON W
RET3 MOVLW 0X05 ;CARGA W CON LA CONSTANTE 05H
MOVWF CONTA2 ;CARGA CONTA2 CON W
RET2 MOVLW 0XDA ;CARGA W CON LA CONSTANTE DAH
MOVWF CONTA1 ;CARGA CONTA1 CON W
RET1 NOP
NOP
NOP
NOP
NOP
NOP
DECFSZ CONTA1,1 ;DECREMENTA CONTA1 EN 1 Y SALTA SI ES CERO
GOTO RET1 ;SALTA A LA ETIQUETA RET1
DECFSZ CONTA2,1 ;DECREMENTA CONTA2 EN 1 Y SALTA SI ES CERO
GOTO RET2 ;SALTA A LA ETIQUETA RET2
DECFSZ CONTA3,1 ;DECREMENTA CONTA3 EN 1 Y SALTA SI ES CERO
GOTO RET3 ;SALTA A LA ETIQUETA RET3
RETURN ;RETORNA A EL PROGRAMA PRINCIPAL
END