Autor Tema: simulacion si construccion no  (Leído 4181 veces)

0 Usuarios y 4 Visitantes están viendo este tema.

Desconectado dakman

  • PIC10
  • *
  • Mensajes: 18
simulacion si construccion no
« en: 04 de Diciembre de 2007, 11:28:37 »
hola a todos, acabo de terminar de hacer un proyecto y lo simulo con el isis y funciona perfectamente pero lo he costruido y no me funciona.

se trata de un secuenciador hos pongo el *.ASM

;------------------------------------------------------------
; Código assembler generado por Niple V5.2.0
; Proyecto: taxis
; Autor:
; Fecha: 22/11/2007
; PIC: 16F84A
; Velocidad de reloj: 4 Mhz
; Descripcion:
;------------------------------------------------------------


 LIST    P=PIC16F84A


_XT_OSC               equ  0x3FFD
_WDT_OFF              equ  0x3FFB
_PWRTE_ON             equ  0x3FF7
_CP_OFF               equ  0x3FFF

 __config _XT_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF


;------------------------------------------------------------
;                  Declaración de Registros
;------------------------------------------------------------
w                     equ  0x0000
status                equ  0x0003
portb                 equ  0x0006
pclath                equ  0x000a
_np_tiempo            equ  0x000e
_np_tiempo1           equ  0x0010
_np_tiempo2           equ  0x0011
_np_tiempo3           equ  0x0012
trisb                 equ  0x0086


;------------------------------------------------------------
;                  Declaración de Bits
;------------------------------------------------------------
c                     equ  0   ;carry / borrow bit
rb0_int               equ  0   ;bit 0 del puerto b
rb1                   equ  1   ;bit 1 del puerto b
rb2                   equ  2   ;bit 2 delpuerto b
rb3                   equ  3   ;bit 3 del puerto b
rb4                   equ  4   ;bit 4 del puerto b
rp0                   equ  5   ;registrer bank select bit
rp1                   equ  6   ;registrer bank select bit
z                     equ  2   ;bit cero


;------------------------------------------------------------
;                        Inicio
;------------------------------------------------------------

reset   org 0
   goto paso2


;------------------------------------------------------------
;                      programa principal
;------------------------------------------------------------
paso2
   movlw b'00000001'                ;configurar el puerto b como ssssssse
   bsf status,rp0                   ;cambiar a banco 1
   movwf trisb
   bcf status,rp0                   ;cambiar a banco 0
   bcf portb,rb1
   bcf portb,rb2
   bcf portb,rb3
   bcf portb,rb4
   btfsc portb,rb0_int              ;si el bit rb0_int = 1
   goto paso2                       ;cierra el ciclo
   bsf portb,rb1                    ;rele1 on
   movlw .25                        ;temporizador 250 mse
   call tiempo_100_1000_mc
   bcf portb,rb1                    ;rele 1 off
   movlw .25                        ;temporizador 250 mse
   call tiempo_100_1000_mc
   bsf portb,rb2                    ;rele1 on
   movlw .25                        ;temporizador 250 mse
   call tiempo_100_1000_mc
   bcf portb,rb2                    ;rele 1 off
   movlw .25                        ;temporizador 250 mse
   call tiempo_100_1000_mc
   bsf portb,rb3                    ;rele1 on
   movlw .25                        ;temporizador 250 mse
   call tiempo_100_1000_mc
   bcf portb,rb3                    ;rele 1 off
   movlw .25                        ;temporizador 250 mse
   call tiempo_100_1000_mc
   bsf portb,rb4                    ;rele1 on
   movlw .25                        ;temporizador 250 mse
   call tiempo_100_1000_mc
   bcf portb,rb4                    ;rele 1 off
   movlw .10                        ;temporizador 10 seg
   call tiempo_1_255_mega_c
   goto paso2                       ;cierra el ciclo


;------------------------------------------------------------
;                  Declaración de Subrutinas
;------------------------------------------------------------

tiempo_100_1000_mc
   movwf _np_tiempo
   goto tiempo_100_1000_mc_1
tiempo_100_1000_mc_bucle2
   nop
   nop
   nop
   nop
   nop
   nop
   nop
tiempo_100_1000_mc_1
   movlw .22
   movwf _np_tiempo1
tiempo_100_1000_mc_bucle1
   movlw .150
   movwf _np_tiempo2
tiempo_100_1000_mc_bucle
   decfsz _np_tiempo2,1
   goto tiempo_100_1000_mc_bucle
   decfsz _np_tiempo1,1
   goto tiempo_100_1000_mc_bucle1
   nop
   decfsz _np_tiempo,1
   goto tiempo_100_1000_mc_bucle2
   return


tiempo_1_255_mega_c
   movwf _np_tiempo
   goto tiempo_1_255_mega_c_1
tiempo_1_255_mega_c_bucle2
   nop
   nop
   nop
   nop
   nop
   nop
   nop
tiempo_1_255_mega_c_1
   movlw .10
   movwf _np_tiempo1
tiempo_1_255_mega_c_bucle1
   nop
   nop
   movlw .99
   movwf _np_tiempo2
tiempo_1_255_mega_c_bucle0
   nop
   nop
   nop
   movlw .200
   movwf _np_tiempo3
tiempo_1_255_mega_c_bucle
   nop
   nop
   decfsz _np_tiempo3,1
   goto tiempo_1_255_mega_c_bucle
   nop
   nop
   nop
   decfsz _np_tiempo2,1
   goto tiempo_1_255_mega_c_bucle0
   nop
   nop
   nop
   decfsz _np_tiempo1,1
   goto tiempo_1_255_mega_c_bucle1
   decfsz _np_tiempo,1
   goto tiempo_1_255_mega_c_bucle2
   return


 End


El practico es tambien muy basico, masa a la pata 5, +5v a la 14
y e resto como el dibujo.

haber si me podeis decir que me pasa  :(

saludos y muchas gracias
« Última modificación: 04 de Diciembre de 2007, 13:14:12 por dakman »

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: simulacion si construccion no
« Respuesta #1 en: 04 de Diciembre de 2007, 12:22:16 »
Hola dakman

el word configuration está a 0x3FF1. ¿te fijaste si aparece así en el grabador de pics?

no veo un retardo para el pulsador.


La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado dakman

  • PIC10
  • *
  • Mensajes: 18
Re: simulacion si construccion no
« Respuesta #2 en: 04 de Diciembre de 2007, 12:51:23 »
perdona pero es que no controlo mucho, he depurado un poco (editando el post anterior) el codigo, pero eso tendria que esta bien ya que en el isis la simulacion es perfecta.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: simulacion si construccion no
« Respuesta #3 en: 04 de Diciembre de 2007, 13:00:07 »
hay cosas que el isis no simula como la palabra de configuración y uno que otro módulo del pic.
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado dakman

  • PIC10
  • *
  • Mensajes: 18
Re: simulacion si construccion no
« Respuesta #4 en: 04 de Diciembre de 2007, 13:09:43 »
Hola dakman

el word configuration está a 0x3FF1. ¿te fijaste si aparece así en el grabador de pics?

no veo un retardo para el pulsador.




donde puedo mirar eso? estoy utilizando el ICPROG para grabar

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: simulacion si construccion no
« Respuesta #5 en: 04 de Diciembre de 2007, 13:12:05 »
si, mira en el icprog donde lo carga, debe coincidir con __config además revisa lo del retardo en el pulsador.

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado dakman

  • PIC10
  • *
  • Mensajes: 18
Re: simulacion si construccion no
« Respuesta #6 en: 04 de Diciembre de 2007, 13:17:36 »
en el ICPROG me sale esto cuando cargo el *.hex

; Generated by WinDis84, (c) Nigel Goodwin 1998.

            LIST      P=16F84, F=INHX8M
            include "P16FXX.inc"
            ORG     0x0000

            GOTO    Label_0001
Label_0001  MOVLW   0x01
            BSF     STATUS    , RP0
            MOVWF   TRISB
            BCF     STATUS    , RP0
            BCF     PORTB     , 01
            BCF     PORTB     , 02
            BCF     PORTB     , 03
            BCF     PORTB     , 04
            BTFSC   PORTB     , 00
            GOTO    Label_0001
            BSF     PORTB     , 01
            MOVLW   0x19
            CALL    Label_0002
            BCF     PORTB     , 01
            MOVLW   0x19
            CALL    Label_0002
            BSF     PORTB     , 02
            MOVLW   0x19
            CALL    Label_0002
            BCF     PORTB     , 02
            MOVLW   0x19
            CALL    Label_0002
            BSF     PORTB     , 03
            MOVLW   0x19
            CALL    Label_0002
            BCF     PORTB     , 03
            MOVLW   0x19
            CALL    Label_0002
            BSF     PORTB     , 04
            MOVLW   0x19
            CALL    Label_0002
            BCF     PORTB     , 04
            MOVLW   0x0A
            CALL    Label_0003
            GOTO    Label_0001
Label_0002  MOVWF   0x0E
            GOTO    Label_0004
Label_0007  NOP
            NOP
            NOP
            NOP
            NOP
            NOP
            NOP
Label_0004  MOVLW   0x16
            MOVWF   0x10
Label_0006  MOVLW   0x96
            MOVWF   0x11
Label_0005  DECFSZ  0x11      , f
            GOTO    Label_0005
            DECFSZ  0x10      , f
            GOTO    Label_0006
            NOP
            DECFSZ  0x0E      , f
            GOTO    Label_0007
            RETURN
Label_0003  MOVWF   0x0E
            GOTO    Label_0008
Label_000C  NOP
            NOP
            NOP
            NOP
            NOP
            NOP
            NOP
Label_0008  MOVLW   0x0A
            MOVWF   0x10
Label_000B  NOP
            NOP
            MOVLW   0x63
            MOVWF   0x11
Label_000A  NOP
            NOP
            NOP
            MOVLW   0xC8
            MOVWF   0x12
Label_0009  NOP
            NOP
            DECFSZ  0x12      , f
            GOTO    Label_0009
            NOP
            NOP
            NOP
            DECFSZ  0x11      , f
            GOTO    Label_000A
            NOP
            NOP
            NOP
            DECFSZ  0x10      , f
            GOTO    Label_000B
            DECFSZ  0x0E      , f
            GOTO    Label_000C
            RETURN
 
            ORG     0x2000
            DATA    0x0F
            DATA    0x0F
            DATA    0x0F
            DATA    0x0F
 
            ORG     0x2007
            DATA    0x11
 
            ORG     0x2100
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF
            DATA    0xFF

            END



No veo con __config por ninguna parte :?   lo del retardo en el pulsador queria que fuese automatico(sin retardo).
« Última modificación: 04 de Diciembre de 2007, 13:25:51 por dakman »

Desconectado dhmejia

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 260
Re: simulacion si construccion no
« Respuesta #7 en: 04 de Diciembre de 2007, 13:19:38 »
El practico es tambien muy basico, masa a la pata 5, +5v a la 14
y e resto como el dibujo.

Creo que falta agregar:
Resistencia de MCLR: Puede ser de 10K entre 5V y la pata 4 del PIC.
Oscilador: El mas común es un cristal de 4MHz entre las patas 15 y 16, con condensadores de 22pF a tierra.

Ten en cuenta que la simulación es solo eso "simulación", el hecho de que un código funcione en proteus no es garantía que vaya a funcionar en el montaje.

saludos.
Pereira - Colombia

Desconectado dakman

  • PIC10
  • *
  • Mensajes: 18
Re: simulacion si construccion no
« Respuesta #8 en: 04 de Diciembre de 2007, 13:28:33 »
ahora ago lo de la pata 4. Pensaba que tenia oscilador interno

Desconectado dhmejia

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 260
Re: simulacion si construccion no
« Respuesta #9 en: 04 de Diciembre de 2007, 14:36:02 »
El PIC 16F84 no tiene oscilador interno, además en la palabra de configuración estas indicando oscilador de cristal.  El pin de MCLR siempre debe conectarse a +5V a través de una resistencia (ver el datasheet), algunos PIC tienen la opción de deshabilitar el MCRL y usar ese pin como entrada digital pero ese no es el caso del PIC16F84.

Saludos,

Diego.
Pereira - Colombia

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4069
Re: simulacion si construccion no
« Respuesta #10 en: 04 de Diciembre de 2007, 17:05:38 »
Ademas debes de tener en cuenta que el watchdog esté de sabilitado. en caso de estar habilitado recuerda en refrescarlo para que no llegue nunca a 0 y el micro se quede dormidito. :mrgreen:

fermin
Todos los días se aprende algo nuevo.

Desconectado dakman

  • PIC10
  • *
  • Mensajes: 18
Re: simulacion si construccion no
« Respuesta #11 en: 05 de Diciembre de 2007, 14:40:25 »
muchas gracias ya me arranca :-/, (no me funciona exactamente como en el isis pero me rompere un poco los cuernos antes de molestaros mas ;)  )

Desconectado jim_17

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 309
    • Blog personal
Re: simulacion si construccion no
« Respuesta #12 en: 05 de Diciembre de 2007, 14:50:09 »
Una cuestion, y espero no romper el hilo del tema. ¿ Para que sirve mclr ? thanks.
Share the world !

Blog's

http://www.area0x33.com

Desconectado elmasvital

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1713
Re: simulacion si construccion no
« Respuesta #13 en: 05 de Diciembre de 2007, 15:03:21 »
es master clear... es el reset del pic... debe estar a nivel alto o el pic está en reset.

Desconectado jim_17

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 309
    • Blog personal
Re: simulacion si construccion no
« Respuesta #14 en: 05 de Diciembre de 2007, 15:07:49 »
Es decir que el pin del MCLR debe estar a 1 y sino el pic se resetea no ? thanks.
Share the world !

Blog's

http://www.area0x33.com


 

anything