Autor Tema: como reseteo el 16f628a  (Leído 3348 veces)

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

Desconectado tithanae

  • PIC16
  • ***
  • Mensajes: 109
como reseteo el 16f628a
« en: 21 de Diciembre de 2006, 20:33:13 »
cuando se configura el 16f628a para que trabaje con el reloj interno que tiene osea  IntRC I/O, la linea RA5 solo se puede configurar como entrada y mi pregunta es como reseteo el pic si ya trabaja como entrada este pin y si le aplico el vpp puedo programarlo? con ICSP

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: como reseteo el 16f628a
« Respuesta #1 en: 21 de Diciembre de 2006, 21:23:29 »
Hola!
1) Si usas RA5 como I/O, no puedes hacer un reset por hard. (y segun creo, ese micro tampoco lo soporta por soft...;))
2) Si, se puede programar igual mediante ICSP.
Te adjunto el esquema de como hacer la conexion....En lugar del pulsador de reset pondrias lo que deseas controlar con ese pin...mediante una resistencia de unos 200 a 1000 ohms.

Saludos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado ESTECA55

  • PIC24H
  • ******
  • Mensajes: 1404
Re: como reseteo el 16f628a
« Respuesta #2 en: 21 de Diciembre de 2006, 22:22:28 »
Hola tithanae, si te sirve, puedes hacer una especie de reset desenergizando el pic, para ello en el pin de Vdd del pic, pon un pulsador normal cerrado en serie, de manera que al pulsarlo estaría cortando la alimentación. Para eso te recomendaría que dejes activo el fuse que hace un reset después de que se estabiliza la Vcc del pic.(BODEN si no recuerdo mal)

Hora les ago una pregunta para los mas entendidos, no es posible escribir el registro WDT (Watch Dog time), si esto es posible, se lo puede activar, y al escribir en el, el valor 255, en la siguiente instrucción se estaría produciendo un reset por soft, para ello hay que saber usar el WDT, que no es para nada complicado, simplemente ubicar estratégicamente el reinicio del mismo.
Esto lo pregunto ya que en los bancos ce memoria no aparece el WDT, por ende no se si sea posible escribir en el. (se me acaba de ocurrir esto jejeej)


Saludos y espero que esea de utilidad.
Hay que esforzarse por ser el mejor, no creerse el mejor

Desconectado tithanae

  • PIC16
  • ***
  • Mensajes: 109
Re: como reseteo el 16f628a
« Respuesta #3 en: 21 de Diciembre de 2006, 23:09:55 »
gracias por las respuestas

aitopes si me parecia que no se podia realizar un reset

ESTECA55 es una buena idea la que me das no lo habia pensado

respecto a tu otra idea si no esta en el banco de registros no creo que se pudeda escribir en el registro del WDT haber que dicen los maitros....

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: como reseteo el 16f628a
« Respuesta #4 en: 21 de Diciembre de 2006, 23:33:10 »
Un reset por soft sencillo es simplemente poner un RETURN cuando el STACK del PIC esta vacio.

Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: como reseteo el 16f628a
« Respuesta #5 en: 22 de Diciembre de 2006, 02:09:50 »
Hola BrunoF!
Muy buen dato! El compilador que uso CREO que en BASIC no me lo deja hacer por que mira por "encima del hombro" que estas haciendo y da error al compilar, pero tranquilamente se lo podria hacer pasar dentro de un bloque ASM.....ENDASM. Voy a probar y les cuento que paso.

Saludos.
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado flacoclau

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1692
    • El Micro Reactor
Re: como reseteo el 16f628a
« Respuesta #6 en: 22 de Diciembre de 2006, 02:46:02 »
muy buena la idea de brunoF!, la otra que podría ser basandose en lo que dijo estecass, es utilizar un pin cualquiera para controlar algún transistor temporizado ó un 555 conectado al pin de mclr, entonces cambiando el estado de dicho pin activas el reset, y el circuitito que te digo te manda un pulso por algún instante reseteando el micro, luego que vuelva a su estado normal y arranca de nuevo, esto si te sobra algún pin :) .
« Última modificación: 22 de Diciembre de 2006, 02:48:20 por flacoclau »
Las personas con buena ortografía me atraen textualmente.

El Micro Reactor

Córdoba capital - Argentina.

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: como reseteo el 16f628a
« Respuesta #7 en: 22 de Diciembre de 2006, 03:43:44 »
Bueno, proba y nos contas que tal te fue.

Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado ESTECA55

  • PIC24H
  • ******
  • Mensajes: 1404
Re: como reseteo el 16f628a
« Respuesta #8 en: 22 de Diciembre de 2006, 04:47:13 »
Muy buen dato BrunoF, no lo tenia registrado

Gracias y Saludos
Hay que esforzarse por ser el mejor, no creerse el mejor

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: como reseteo el 16f628a
« Respuesta #9 en: 22 de Diciembre de 2006, 08:37:59 »
Muy buen dato BrunoF, no lo tenia registrado

Gracias y Saludos

Así es, la razón es que al estar el stack vacío si haces un reset irá al 0x0000 porque el mismo se carga con valores nulos.

No es lo mismo que hacer un "reset" (no se reseteará nada al estado PowerOn Reset) pero es una forma de inicializar el programa nuevamente.

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)