Autor Tema: Error mio?? o el pic......  (Leído 3145 veces)

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

Desconectado NorColombiano

  • PIC10
  • *
  • Mensajes: 11
Error mio?? o el pic......
« en: 25 de Julio de 2007, 21:33:21 »
Hola saludos a todos los piqueros...

Bueno hice un programa en asm, la verdad no se que pasa no creo que sea el programa sino el pic... bueno aqui esta el codigo:

...
INCLUDE "P16F84A.INC"
LIST P=16F84A


STATUS EQU 03H
PORTA EQU 05H
PORTB EQU 06H

Timer EQU 020H
Turn EQU 021H



ORG  00H
   BSF STATUS,5 ;Configurar
   BSF PORTA,0 ;Pa0=In
   BCF PORTA,1 ;Pa0=OUT
   BCF STATUS,5   ;End config
   CLRF Turn

   CLRF PORTA

INICIO:
   BTFSC PORTA,0
   GOTO START
   GOTO INICIO

START:
   BTFSC PORTA,0
   GOTO START
   GOTO ENVIAR


ENVIAR:
   BTFSC Turn,0
      GOTO ENVIARA
           GOTO ENVIARB


ENVIARA:
BSF PORTA,1
CALL TIMEX
BCF PORTA,1
CALL TIMEX
BSF PORTA,1
CALL TIMEX
BCF PORTA,1
CALL TIMEX
CLRF Turn
GOTO INICIO

ENVIARB:
BSF PORTA,1
CALL TIMEX
BSF PORTA,1
CALL TIMEX
BSF PORTA,1
CALL TIMEX
BSF PORTA,1
CALL TIMEX
BSF Turn,0
BCF PORTA,1
GOTO INICIO






TIMEX:
   movlw 055h ;decimas de segundo
   movwf Timer
      TIMEXB:      
      decfsz Timer,1
         GOTO TIMEXC
      Return
TIMEXC:
   CALL TIMEY
   GOTO TIMEXB



cblock
    Loop
    Loop1
endc


TIMEY:
    movlw 0x2c
    movwf Loop
Delay10ms_00
    movlw 0x4a
    movwf Loop1
Delay10ms_01
    decfsz Loop1, f
    goto Delay10ms_01
    decfsz Loop, f
    goto Delay10ms_00
    movlw 0x10
    movwf Loop
Delay10ms_10
    decfsz Loop, f
    goto Delay10ms_10
    goto $+1
    return
   END
...

En si, el programa jala mas o menos como debe (el timer segun es una decima de segundo, pero ps no creo q este bien) el pex esta en esto:

A veces prendo el pic, todo funciona perfecto (el led esta apagado, al oprimir el boton, al dejar de precionarlo el led se enciende por X segundos entonces se apaga)

El problema es q anormalmente el led se queda prendido, (siempre es asi: o funciona todos los casos, o en el primer intento fracasa)

Le intento reseteando el pic, le intento apagando la corriente, etc...

Eh pensando que quiza debo desactivar alguna interrupcion o no se... (no esta desactivado el timer? ademas en una ocacion hice CLRF INTCON y no vi diferencias)

Lo que pienso que esta mal es:
El cristal debe quedarse fijo (sin mas pulsaciones)

Pero no creo... ya probe 3 cristales direntes, 3.5mhz y 2 de 4mhz y noi hay cambios, los probe con y sin condenzadores de 22pf....

La bateria pero tampoco... porque probe con otra y nada...

Falla arbitrariamente

De 10 encendidas, solo en 3 ocaciones va a funcionar... osea 70% de errror...

Alguien me podria decir q estoy haciendo mal?

Saludos...

PD: No es el pic, porq eso me paso con el pic anterior solo q usando otro programa, este es un nuevo pic, solo q el error pasa muy frecuente...

Y otra cosa:

Si el pic falla de este modo, como puedo averiguarlo?? osea algo para q el pic se resetie tipo el watchdog... debo usarlo a fuerzas??

En un codigo normal, aun asi es necesario el watchdog??? (osea... el watchdog deberia ser usado siempre?)

Saludos

Y felices pictas  :D :-) :-/ :mrgreen: :lol: :x :P :shock: :o :( :)

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Error mio?? o el pic......
« Respuesta #1 en: 26 de Julio de 2007, 15:56:36 »
a primera leida, el cblock debe ponerse después del include, no se si sea correcto colocarlo allí (nunca lo he probado asi como lo tienes)
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado NorColombiano

  • PIC10
  • *
  • Mensajes: 11
Re: Error mio?? o el pic......
« Respuesta #2 en: 26 de Julio de 2007, 17:57:47 »
Bueno pues igual, funciona, ese codigo lo copie de un timer q aye en internet yo usaba un timer q no ocupaba el cbloc (pero ps el mio en si no sabia cuantos ms tomana, lo hacia empirico pues)

el codigo original (con el timer jalando sin cblok ni nachos) me da el mismo error.

Ayer me la pase moviendole a lo loco, poniendo resistencias, dandole reset tras reset tras reset y nada, el pic funciona o falla, independient4emente de si doy reset, si lo acabo de conectar a la alimentacion, si despues de media hora le doy reset...

Osea es totalmente al azar la falla...

Bueno, ps seguire investigando, y gracias por el consejo del cblock :)

Desconectado NorColombiano

  • PIC10
  • *
  • Mensajes: 11
Re: Error mio?? o el pic......
« Respuesta #3 en: 01 de Agosto de 2007, 23:59:03 »
Bueno ya le movi de arriba a abajo, lo prove con 3 pics distintos, cambie cristales, etc....
Nada funciona...
Pero ps ahorita me salio una teoria, a ver si alguien me la confirma:
Los .hex de una simulacion del proteus... son exactamente los mismos .hex que obtendria en el mplab con mpasm?
A lo mejor el .hex del proteus tiene alguna rutina de debugging o alguna interrupcion para el debuggeado...
Alguien me podria confirmar esto?
Saludos.

Algo curioso:

Como no tengo fuente de poder, al pic lo alimento via 3 pilas de 1.5 v en serie, segun un multimetro el voltage mas o menos oscila entre 3.5 y 4v (me imagino q las pilas ya estan algo gastadas...)

Pues bueno, con una de las baterias (la mas gastada) el pic si me funciona un 80% de encendidas,
con la mas nueva me funciona quiza 1 de cada 20...

Lo curioso es que si pongo un led entre el vcc y el + del pic usando la pila nueva (4v) el pic me responde digamos 60% de las veces que lo enciendo....

No se algo me dice q hay algo que esta haciendo falso pero ya verifique todo, pienso q una solucion temporal seria ponerle una resistencia variable e irle moviendo segun se gaste la vateria pero... ps es una solucion temporal muy forzada...

Mi pregunta es:

Debo desactivar interrupciones, timers o algo? lo unico que desactivo es el wdt y ya... probe con poweronreset etc...

Bueno despues de mucho moverle... creo que el pic se queda trabado, como cuando le quitas el oscilador cuando esta corriendo, y esto pasa en la primer instruccion en la que active un puerto o desactive uno...

Lei por ahi que se le puede colocar un condensador extra al pic para q tenga mas energia al inicio, alguien sabe donde puedo encontrar el diagrama o la info? ya busque y nomas no...

Bueno saludos... ahi si logro hacer jalar esto como debe les digo q pex para si alguien mas se traba...




« Última modificación: 02 de Agosto de 2007, 02:39:33 por NorColombiano »

Desconectado NorColombiano

  • PIC10
  • *
  • Mensajes: 11
Re: Error mio?? o el pic......
« Respuesta #4 en: 02 de Agosto de 2007, 03:16:01 »
Pos solucionado este pic ocupa 3v para jalar...

BUAHAHAHA :D

(ta raro, yo pensaba q jalaban entre 4.5 y 5.5 v o algo asi...)

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Error mio?? o el pic......
« Respuesta #5 en: 02 de Agosto de 2007, 17:21:27 »
...
Pero ps ahorita me salio una teoria, a ver si alguien me la confirma:
Los .hex de una simulacion del proteus... son exactamente los mismos .hex que obtendria en el mplab con mpasm?
A lo mejor el .hex del proteus tiene alguna rutina de debugging o alguna interrupcion para el debuggeado...
Alguien me podria confirmar esto?
...

yo compilo desde el mplab, no se porque pero no confío en el compilado del proteus, solo lo uso para la generación del .sdi que se necesita en la depuración línea a línea, cuando estoy seguro que todo está bien, me arranco con mplab y ese es el que grabo en el pic.

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

Desconectado NorColombiano

  • PIC10
  • *
  • Mensajes: 11
Re: Error mio?? o el pic......
« Respuesta #6 en: 03 de Agosto de 2007, 18:40:22 »
pues yo la verdad voy a hacer lo mismo, ese proteus nomas comense a usarlo y valieron mis programas pero...

Ahora si q no entiendo, compre un convertidor de corriente (me salio defectuoso, le pongo 1.5v y me da 4.66v)

como sea le pongo una resistencilla de 1k a negativo, 2 diodos a positivo, parece q funciona digamos 5 de 10 (asi seguidas, jala 1 ves, lo apago lo prendo, sigue funcionando... la 6ta ves ya se queda estatico, y se queda asi...)

Ya lo probe con alimentaciones distintas... dudo que sea que ocupo los 5v exactos puesto q con 3v me ha funcionado...

ya estoy desesperado, es como si el pic entrara en la direccion 00h y de ahi no pasara...

voy a usar RC como oscilador... quiza mis 3 cristales estan da~ados... aqui una preguntilla:

Es posible que un cristal se da~e, de tal forma q haga que el pic funcione 100% (osea siempre el codigo funcione, ningun error) pero q otras veces el cristal nunca funcione.... es posible?

Bueno, dejen le calo con RC a ver si de pura kk funciona esto....


No... saben?? voy a hacerle un ultimo intento, usando wdt... a lo mejor soy un wey y eso debi usar desde el principio jejejeje bueno... dejen wacho y les cuento :)

Y gracias a los 2 camaradas que me respondieron :)

Desconectado NorColombiano

  • PIC10
  • *
  • Mensajes: 11
Re: Error mio?? o el pic......
« Respuesta #7 en: 03 de Agosto de 2007, 20:08:12 »
Pues nel... Usando wdt:

led encendido todo el tiempo... (falla)

led enciende... reset... led enciende... reset... ... (ok)

Q onda ya probe muchos voltages, ya hice practicamente todo de todo... la ultima frontera es usar otro cristal que tengo por ahi (q dudo q jale...) o usar RC...

Ya si de plano no funciona de esas dos formas... pues estoy salado JAJAAJ

por cierto, a riesgo de sonar loco... pero mi programador de pics tenia el zocalo medio corto asi q tube que doblar un poco las patitas del pic (igual tenia q hacerlo para que entrara en el protoboard) alguien cree q eso sea mi problema? que fui muy brusco al doblarlas?

trone los pics por agarrarlos sin proteccion??

Cualquier pista se los agradesco... bueno... dejen sigo moviendole.. a webo debo hacer funcionar ese pic revelde....

Jajaja... va a saber quien manda  :x

Desconectado NorColombiano

  • PIC10
  • *
  • Mensajes: 11
Re: Error mio?? o el pic......
« Respuesta #8 en: 04 de Agosto de 2007, 19:55:15 »
Pues...

Creo que el dios de los pics me mando una prueba de resistencia  :D

Chale... a ver...

Ya minimise todos los factores que podrian hacer caos...

Recistencias/capacitores/cristal/voltage/cables/etc

Probando con RC les comento:

Jala igual pero puedo controlar la velocidad a la que jala el pic EHEHEHE  (y la verdad es divertido eh, se los recomiendo  8))

Hubo algo curioso..

Al mover el cable que tenia para reset accidentalmente toque porta.4 (TOCK1) y al parecer eso me hizo subir los aciertos y minimizar los errores casi a 0...

Bueno, si prendo el pic y funciona, reseteo ilimitadas veces y siempre regresa funcionando... esto es exelente, exepto que si inicio el pic y no funcina, es un pedo hacerlo jalar (pero almenos ya respondio al reset)

Lo cual indica que hay otro problema... voy a tronar ese programa (aunq dudo que sea eso... el receptor usa un codigo parecido y lo hice funcionar sin problemas)

Dejen ver... a proposito, solo por curiosidad:

Se deben poner todas las patitas del pic (puertos sin usar) a tierra?

cale haciendolo con todos los del porta (los del portb nop pues no tengo tantas resistencias)

Bueno. si tengo tantas... dejen hago el portb a tierra... pero ps... es que... la duda es:

Porque funciona a veces y porque no????? asi empiricamente creo que trae una capacitancia dentro... antes pensaba q era porq el voltage no era suficiente pero nel... ya que use un eliminador y ademas el otro pic tiene mas cosas (un ampli) y funciona perfecto...

Bueno... ps creo que...

Lo ultimo que podria ser es el programador...

Voy a leer en el foro de programadores... quiza el mio tenga ese defecto  (dejar cargado el pic o algo)

Saludos





Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
Re: Error mio?? o el pic......
« Respuesta #9 en: 04 de Agosto de 2007, 20:37:06 »
Hola, por lo que comentas, lo primero seria que le construyas una fuente de alimentacion, con un 7805
porque de lo contrario, si no es eficiente, al arrancar se te tilda
asi que coloca un electrolitico de al menos 470 microfaradios, el regulador y otro capacitor a la salida de entre 10 y 100 microsf..

luego nos cuentas  :-/

Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado NorColombiano

  • PIC10
  • *
  • Mensajes: 11
Re: Error mio?? o el pic......
« Respuesta #10 en: 04 de Agosto de 2007, 21:35:42 »
pos como fuenteestaba usando un eliminador de voltaje da 4.7 aprox una pregunta, el 7805 se lo puedo conectar digamos en un rango de 5 a 12 v?

ahorita no puedo ir a comprarmelo porq ya cerraron :(

Aunq pienso que si es eso, otro detalle ahorita lo hice funciona 90% de las veces (incluso si se tilda, al dar reset ahora si vuelve a la normalidad) lo hice conectando directo la pata RB7 y RB6 a tierra

No entiendo a que se deba esto, quiza ocupo especificar el puerto b como salidas o entradas?

Bueno, pues ya casi esta chido... nomas por ese 10% de fallas...

Gracias por tu respuesta man :)

Por cierto, probe el otro pic... al principio no funciono, despues le hice un aterrisaje en la RB7... no funciono, se la quite y de repente ya funciona... alguna posibilidad de que alguna carga quede en ese lugar?
« Última modificación: 04 de Agosto de 2007, 21:42:20 por NorColombiano »


 

anything