bueno se usa el Pic16f84
alli les va :
El codigo es el siguiente :
El programa
;contador de 0-9 de los objetos que pasen entre un rayo de luz y una foto celda
;Por Carlos Fernando Jiménez
PUERTAB EQU 0X06
PUERTAA EQU 0X05
ESTADO EQU 0X03
OPTION1 EQU 0X01
INTC EQU 0X0B
CONTADOR EQU 0X0C
PCL EQU 0X02
W1 EQU 0X0D
aux equ 0x0e
goto INICIO
ORG 4
goto INTERR
INICIO MOVLW 0X0b
MOVWF CONTADOR
bsf ESTADO,5 ;BANCO1
movlw b'00000000'
movwf PUERTAB ;PUERTA B COMO SALIDA
movlw b'11111111'
movwf PUERTAA ;PUERTA A COMO ENTRADA y salida
BUCLE bcf ESTADO,5 ;BANCO0
btfsc PUERTAA,1 ;Esperamos que sea exitado el sensor
GOTO BUCLE
OK DECFSZ CONTADOR
GOTO SALTO
movlw D'10'
movwf CONTADOR
SALTO movfw CONTADOR
subLw D'10'
bcf ESTADO,5 ;BANCO0
call DISPLAY ;Buscamos el código para el display
xorlw b'11111111' ;Disaplay de ánodo común (debemos invertir todo)
movwf PUERTAB ;Escribimos el display
BSF ESTADO,5 ;BANCO1
movlw b'11010111'
movwf OPTION1
bcf ESTADO,5
movlw 5
movwf OPTION1 ;cargamos el timer
movlw b'10100000' ;INTERRUPCION DE TIMER PERMITIDA
movwf INTC
movlw 1
movwf W1
espera btfsc W1,0
goto espera
pito movlw 200 ;pito
movwf aux
BSF ESTADO,5 ;BANCO1
movlw b'11010111'
movwf OPTION1
bcf ESTADO,5
pito1 movlw 0xfe
movwf OPTION1 ;cargamos el timer
movlw b'10100000' ;INTERRUPCION DE TIMER PERMITIDA
movwf INTC
movlw 1
movwf W1
espera3 btfsc W1,0
goto espera3
bcf ESTADO,5
movfw PUERTAB
xorlw b'10000000'
movwf PUERTAB
DECFSZ aux
goto pito1
movwf PUERTAB
andlw b'01111111' ;apagar el parlante
movwf PUERTAB
BUCLE1 bcf ESTADO,5 ;BANCO0
btfss PUERTAA,1 ;Esperamos que se quite el objeto del sensor
GOTO BUCLE1
bcf ESTADO,5 ;Eliminación del rebote
movlw 5
movwf OPTION1 ;cargamos el timer
movlw b'10100000' ;INTERRUPCION DE TIMER PERMITIDA
movwf INTC
movlw 1
movwf W1
espera1 btfsc W1,0
goto espera1
goto BUCLE
INTERR
salto1
movlw b'10100000'
movwf INTC
movlw 0
MOVWF W1
RETFIE
DISPLAY addwf PCL,1
retlw 0x3f
retlw 0x06
retlw 0x5b
retlw 0x4f
retlw 0x66
retlw 0x6d
retlw 0x7d
retlw 0x07
retlw 0xff
retlw 0xef
end
Pero me marca errores en el codigo por favor alguien que domine el tema ya que es mi proyecto final..