Autor Tema: iniciacion con pic 16f84  (Leído 2093 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Ricardo1950

  • PIC10
  • *
  • Mensajes: 9
iniciacion con pic 16f84
« en: 26 de Julio de 2018, 15:09:28 »
hla he generado un código lo he compilado con MPLAB ide 8,00 y lo  he simulado  también , con el mismo programa . lo he pasado al chip con ic prog , segun parece todo bien , pero no funciona , he revisado el harward, es muy basico . Aparentemente  está bien. agradecería le echasen un vistazo al código para ver si hay errores. gracias.

;programa abrir, cerrar porton, encender y apagar farola

STATUS     EQU    03H
TRISA        EQU    05H
TRISB        EQU    06H
PORTA        EQU    05H
PORTB        EQU    06H
CUENTA1    EQU     0CH
CUENTA2    EQU     0DH

F                EQU        1
W               EQU        0

                  ORG           00H
                  BSF            STATUS,5            ; SELEC.BCO 1
                  BSF            PORTA,0               ;CONFIG.  A,0   COMO ENTRADA
                  BSF            PORTA,1                ;CONFIG. A,1    COMO ENTRADA
                  BCF            PORTB,0                ;CONFIG. B,0     COMO SALIDA
                  BCF            PORTB,1                ;CONFIG.  B,1    COMO SALIDA
                  BCF            STATUS,5               ;SELEC.            BCO    , 0
                  CLRF           CUENTA1
                  CLRF            CUENTA2

FAROLA        BTFSS         PORTB,0               ; COMP. FOROLA ENC. O APAG.
                   GOTO          ENCENDIDO
                   GOTO          APAGADO
ENCENDIDO    BTFCS       PORTA,0                 ; COMP. SI HAY PULSO ENC. NO HAY, VA A PORTON
                    GOTO          PORTON
                     BSF            PORTB,0                 ; ENCIENDE FAROLA
                     CALL           DELAYF
PORTON         BTFSS         PORTB,1                  ;COMP .PORTON ABIERTO, O CERRADO
                     GOTO          ABRIR
                     GOTO          CERRAR
ABRIR           BTFSS          PORTA,1                   ;COMP. SI HAY PULSO APERTURA. NO HAY VA  A FAROLA
                    GOTO            FAROLA
                    BSF               PORTB,1                   ; ABRE PORTON
                    CALL             DELAYP
                     GOTO           FAROLA

DELAYF        MOVLW        0FFH                               ;CARGA W CON 255 DECIMAL
                    MOVWF      CUENTA1                          ; SE CARGA EN CUENTA1
 ACA1           DECFSZ       CUENTA1,F                       ;DECREMENTA C.1 SI ES CERO SALTA INST.
                    GOTO         ACA1
ESPERA        BTFSS         PORTA,0                          ; ESPERA QUE SUELTE EL INTERRUPTOR
                    GOTO         ESPERA
                   RETURN

DELAYP        MOVLW         0FFH                                  ;CARGA W CON 255 DECIMAL
                   MOVLWF       CUENTA2                            ;SE CARGA EN CUENTA2
  ACA2         DECFSZ         CUENTA2,F                          ; DECREMENTA CUENTA2, SI ES CERO SALTA
                   GOTO            ACA2
ESPERA2      BTFSS            PORTA,1                             ; ESPERA QUE SE SUELTE INTERRUPTOR                   
                   GOTO             ESPERA 2
                   RETURN
                    END


Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:iniciacion con pic 16f84
« Respuesta #1 en: 26 de Julio de 2018, 23:28:06 »
FAROLA        BTFSS         PORTB,0               ; COMP. FOROLA ENC. O APAG.
                   GOTO          ENCENDIDO
                   GOTO          APAGADO

PORTON         BTFSS         PORTB,1                  ;COMP .PORTON ABIERTO, O CERRADO
                     GOTO          ABRIR
                     GOTO          CERRAR

No hay ningun "APAGADO" ni "CERRAR" o tal ves lo borraste sin querer. Lo raro es que compile así de esa forma

Tambien le faltan los FUSES a ese programa... te recomiendo que pases al MPLAB X, con forma grafica te genera los FUSES de forma sencilla, para cualquier micro.

PD:

Podes incluir el p16f84a.inc que tiene definido los registros, F y W, ademas tiene definidos los FUSES ( o bits de confirguracion )
Solo necesitarias declarar CUENTA1 y CUENTA2

Desconectado Pinolillo16

  • PIC18
  • ****
  • Mensajes: 324
Re:iniciacion con pic 16f84
« Respuesta #2 en: 27 de Julio de 2018, 22:22:20 »
Que tal Ricardo, como dice Killer. Porque no cambias al MPLAB X esta mejor, ya que tiene muchas ventanas de ayuda. El incluir el .INC te facilitara mas la programacion ya que no tienes que andar asignado los valores a los registros del micro. Solo los llamas. Tambien te sugiero cambies de micro, este es muy viejito y caro, al mismo precio puedes encontrar muchos con mejores prestaciones.

Saludos


 

anything