Led intermitente en assembler

#1
hola gente. es mi primer tema que abro
necesito una gran ayuda. Para el siguiente circuito necesito realizar un programa para el MPLAB, el led debe encender y apagar en forma intermitente, con un ciclo activo de 500 mseg.

LIST P=16F84
STATUS EQU 0X03
PORTB EQU 0X06
TRISB EQU 0X06
;**************************************************
; RUTINA PRINCIPAL
ORG 0X00
GOTO INICIO
INICIO BSF STATUS,5
BCF TRISB,0
BCF STATUS,5
CICLO BSF PORTB,0
GOTO CICLO
END

A este programa tengo que agregarle el retardo, tengo el programa PICDEL pero no puedo hacer nada. Si me ayudan se los agradeceria mucho.

Saludos
 

Adjuntos

#2
A tu código no solo le faltan las subrutinas de retardos, sino que también le hace falta apagar el led, pues lo prendes y nunca lo apagas, aunque muy seguramente como no le das tiempo siemre lo verás off, revisa bien tu código primero y cuando lo tengas listo te envio las subrutinas de tiempo q te servirán. Salu2
 
#3
Mas o menos es lo que buscas...

Código:
List P = 16F84A

;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;
STATUS  EQU  03H
PORTA   EQU  05H
PORTB   EQU  06H
TRISA   EQU  85H
TRISB   EQU  86H
TMR0    EQU  0X01
OPTIO   EQU  0X01
INTCON  EQU  0X0B
CONTA   EQU  0X0C
RB0     EQU  0
RP0     EQU  5

;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;
;CONSTANTES DEL PROGRAMA
TIEMPO EQU   0X30     ;POSICION DE MEMORIA
TICKS  EQU   D'50'
ORG   0
;ACCEDEMOS AL SEGUNDO BANCO DE RAM DE DATOS
BSF   STATUS,5
MOVLW   B'00000001'
MOVWF   TRISB
MOVLW   B'00000000'
MOVWF   TRISA
;CONFIGURACION DE TIMER
MOVLW   B'01010111'
MOVWF   OPTIO
;ACCEDE4MOS AL PRIMER BANCO DE RAM
BCF   STATUS,RP0
CLRF  PORTA

;;;;;;;;;;;;;;;; ESTE ES EL PROGRAMA EN SI

INICIO   BTFSC   PORTB, 0
         GOTO INICIO
         CALL RETARDO
         BSF PORTA,1
         CALL PAUSA
         BCF PORTA,1
         GOTO INICIO

;;;;;;;;;;;;;;;AQUI VA EL TEMPORIZADOR

PAUSA    MOVLW  TICKS
         MOVWF  TIEMPO
OTR_TIC  MOVLW  0XB2
         MOVWF  TMR0
SIGUE    BTFSS  INTCON,2
         GOTO   SIGUE
         BCF    INTCON,2
         DECFSZ TIEMPO,1
         GOTO   OTR_TIC                  
         RETURN
         RETARDO  CLRF  CONTA
         INCREM   INCFSZ  CONTA,1
         GOTO INCREM
         RETURN

         END
 
Arriba