SoloCodigo

Programación Específica => Microcontroladores => Mensaje iniciado por: Don turri en Miércoles 7 de Julio de 2004, 17:16

Título: Reset?
Publicado por: Don turri en Miércoles 7 de Julio de 2004, 17:16
El problema es que tengo una codigo que tras enviar datos por la usart del pic 16f873a espera 10 segs y luego termina  encendiendo una luz en la salida 7 del puerto b.
El problema es que al resetearlo, pese a enviar los datos, el retardo no se vuelve a realizar(o sea la luz se enciende de inmediatamente).
Ademas si desconecto la alimentacion del pic, y luego lo vuelvo a alimentar, todo funciona bien.
que puede hacer?
debo hacer algo especial con el reset? :huh:  :huh:
Título: Re: Reset?
Publicado por: karen81 en Jueves 8 de Julio de 2004, 05:39
:) Los pic solo tienen reset por encendido y no por pin fisico, cuando tu le das el reset por el pin fisico el toma a esto como una interrupcion y se va a la direccion 0000 y sigue con lo que esta despues de ahi,que no precisamente es el inicio de tu programa, entonces si tu quieres que al darle reset por ese pin sea lo mismo que al apagarlo y volverle a encender tienes que colocar un salto incondicional asi:


ORG 0

goto inicio

ORG 4

goto rutina ;alguna rutina de interrupcion si estas utilizando interrupciones

ORG 5

inicio :  

te lo digo por experiencia propia ya que yo tuve el mismo problema, si no se corrige tu error avisame


bye y suerte   :hola:
Título: Re: Reset?
Publicado por: LechugaHack en Jueves 8 de Julio de 2004, 14:07
Creo que deberias reiniciar todas las variables porsiaca, porque el reset fisico, reinicia de cierta forma solo los registros de proposito especifico, no los generales y si estas suponiendo a alguno como cero luego del resert estas mal nene, es mas el valor en los reg generales se puede conservar hasta q la alimentacion sea 2 vol en muchos casos

suerte!
Título: Re: Reset?
Publicado por: Don turri en Jueves 8 de Julio de 2004, 18:58
gracias!!!! :comp:  :comp: