Hola usuarios de forosdeelectronica
Tengo problemas con el siguiente programa, es un semaforo, el mplab me lo compila bien, pero cuando lo simulo en proteus no me hace nada. No se que problema sera, ayuda por favor
*Les adjunto el .asm y el archivo que proteus*
aqui les muestro la imagen en proteus
Tengo problemas con el siguiente programa, es un semaforo, el mplab me lo compila bien, pero cuando lo simulo en proteus no me hace nada. No se que problema sera, ayuda por favor
Código:
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:: ::
;:: ..::PROGRAMA SEMAFORO::.. ::
;:: ::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::
List p=16f876
include<p16f876.INC>
radix hex
reg1 equ 20h
reg2 equ 21h
reg3 equ 22h
status equ 03h
porta equ 05h
trisa equ 85h
portb equ 06h
trisb equ 86h
org 0
goto inicio
org 5
;================Configuracion de puertos==============
bcf status,6 ;O en rp1
bsf status,5 ;1 en rp0
movlw 00000011b ;Palabra de configuracion
movwf trisa
movlw 00000000b
movwf trisb
bcf status,5
inicio btfsc porta,0 ;Testeo del bit 0 de porta
goto inicio
goto prende
prende bsf portb,0 ;Prende bit de porta
bcf portb,1
bcf portb,2
call delay_1
bcf portb,0
bsf portb,1
bcf portb,2
call delay_2
bcf portb,0
bcf portb,1
bsf portb,2
call delay_1
btfsc porta,1
goto prende
goto apaga
delay_1 movlw 10110001b
movwf reg1
tres movlw 40h
movlw reg2
dos movlw 50h
movwf reg3
uno decfsz reg3,1
goto uno
decfsz reg2,1
goto dos
decfsz reg1,1
goto tres
return
delay_2 movlw 32h
movwf reg1
tres1 movlw 40h
movlw reg2
dos2 movlw 50h
movwf reg3
uno3 decfsz reg3,1
goto uno3
decfsz reg2,1
goto dos2
decfsz reg1,1
goto tres1
return
apaga bcf portb,0
bcf portb,1
bcf portb,2
end
*Les adjunto el .asm y el archivo que proteus*
aqui les muestro la imagen en proteus
Adjuntos
Última edición por un moderador: