Autor Tema: 16f628 --> 16F628a  (Leído 5961 veces)

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

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 2312
16f628 --> 16F628a
« en: 26 de Septiembre de 2006, 20:32:05 »
hola

mi pregunta es la siguiente: tengo un archivo .hex para 16f628 que quisiera grabar en un 16f628a. segun entiendo de este post http://www.todopic.com.ar/foros/index.php?topic=13166.0 es suficiente con tener en cuenta que boren este en off. tambien tengo el .asm pero a la hora de compilarlo me da error 'Message[302] ... Register in operand not in bank 0.  Ensure that bank bits are correct' que segun este otro post mas que un error es una advertencia: http://www.todopic.com.ar/foros/index.php?topic=9331.0 pero el .hex se genera mal.

creeis que si uso el .hex y lo grabo desde winpic configurandolo como si fuera a grabar un 16f628a y con boren en off funcionara? o al estar embebido el include del 16f628 en el .hex no lo hara? la unica informacion que encuentro sobre las diferencias de ambos estan en este foro y hace referencia unicamente a la velocidad y al boren. y en cuanto al 16f628... aceptaba velocidades de 20Mhz o solo funcionaba a 4Mhz?

bueno, mis gracias anticipadas y saludos

pd: no tengo ocasion de probarlo actualmente -que seria lo mas logico- por eso os pregunto, por si ya lo hicisteis en algun momento...
« Última modificación: 27 de Septiembre de 2006, 16:01:09 por xocas06 »

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: 16f628 --> 16F628a
« Respuesta #1 en: 26 de Septiembre de 2006, 23:15:34 »
hola

mi pregunta es la siguiente: tengo un archivo .hex para 16f628 que quisiera grabar en un 16f628a. segun entiendo de este post http://www.todopic.com.ar/foros/index.php?action=post;board=1.0 es suficiente con tener en cuenta que boren este en off. tambien tengo el .asm pero a la hora de compilarlo me da error 'Message[302] ... Register in operand not in bank 0.  Ensure that bank bits are correct' que segun este otro post mas que un error es una advertencia: http://www.todopic.com.ar/foros/index.php?topic=9331.0 pero el .hex se genera mal.
Estate tranquilo que es solo una advertencia o warning.  Un verdadero error evitaría que se genere el .HEX.

Te esta diciendo "fíjate que el registro que vas a configurar/accesar/modificar no está en el banco 0" , de forma que tomes las precauciones con los bits RP0, RP1.

Hay muchos otros tipos de advertencia pero esta es una muy muy común.  Si pones errorlevel -302 se borrará este warning.  La directiva errorlevel seguida de un signo menos ("-") desactiva un mensaje.  Si le pones + , lo reactivas.

Podrías incluso armar una sección donde quieras que el warning esté habilitado y una seccíon donde lo quieras deshabilitar.  Esto se hace con el - y + respectivamente.


creeis que si uso el .hex y lo grabo desde winpic configurandolo como si fuera a grabar un 16f628a y con boren en off funcionara? o al estar embebido el include del 16f628 en el .hex no lo hara? la unica informacion que encuentro sobre las diferencias de ambos estan en este foro y hace referencia unicamente a la velocidad y al boren. y en cuanto al 16f628... aceptaba velocidades de 20Mhz o solo funcionaba a 4Mhz?

bueno, mis gracias anticipadas y saludos

pd: no tengo ocasion de probarlo actualmente -que seria lo mas logico- por eso os pregunto, por si ya lo hicisteis en algun momento...

Fíjate en este post PICs con terminacion en letra A

Una pregunta, el .hex es todo lo que tienes? ¿y tu lo incorporas al MPLAB desensamblandolo y luego lo vuelves a compilar? ¿es esto lo que haces?

- 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)

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 2312
Re: 16f628 --> 16F628a
« Respuesta #2 en: 27 de Septiembre de 2006, 15:56:21 »
hola maunix, gracias por contestar.

por algun motivo desconocido en vez de pegar el enlace de Pics con terminacion en la letra A ( http://www.todopic.com.ar/foros/index.php?topic=13166.0 ) pegue uno que crea un nuevo tema  :( :( quiza la hora y el cansancio.

te cuento. tengo el .hex y el .asm, pero estan pensados para un 16f628 asi que me fui a la web de microchip a buscar algo asi como 'como migrar de uno a otro' o algun documento que me indicara en pocas paginas si me merecia seguir adelante con el intento o no porque no tengo conocimientos de asm y si se necesitaba bucear por el programa pues lo abandonaba sin mas. el caso es que no encontre nada, asi que busque en este nuestro estupendo foro y di con el enlace que mencionas y en el que precisamente Chaly29 daba la respuesta a mi pregunta. y me dije tate, edito el .asm le cambio el include para que utilice el 16f628a y adelante con el pero entonces aparecieron los errores que parece ser que no son tales sino meras advertencias segun tu comentas y que ya habia visto en el otro enlace que puse (y que este si funciona bien). pero creo que el .hex que genera no esta bien

tambien tengo ya la respuesta que no sabia y es que el 16f628 tambien podia funcionar a 20Mhz...

lo que hare sera probarlo en un improvisado entrenador que tengo y lo hare usando el .hex del 16f628 pero indicandole en winpic que voy a usar un 16f628a poniendo boren en off y a ver que pasa y si eso no resulta modificare los parametros la llamada del include del .asm y tratare de compilarlo sin errores y con vuestra ayuda pero si se lia mucho lo dejo porque sin conocimientos de asm seria absurdo e injusto molestaros con un programa de 400 lineas...  :shock: :shock:

saludos

pd: lo que no encontre en el primer momento en microchip lo encontre finalmente en el datasheet del 16f628a, en las ultimas paginas del mismo. os lo adjunto. edito el primer post para que llame al enlace correcto: Pics con terminaion en la letra A

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: 16f628 --> 16F628a
« Respuesta #3 en: 27 de Septiembre de 2006, 17:29:06 »
xocas06 no veo muchas alternativas a tu problema más que pensar o bien que el asm está malo o bien que tu programador no puede grabar bien tu pic.

También puede ser que en tu software hagas algo que interfiera con algunos de los nuevos configuration bits que tiene el 16F628A.

Sería bueno que nos cuentes porqué piensas que "el HEX que te genera no está bien", ¿acaso no es el mismo al anterior?

¿Será que el asm no es el correcto?

¿Porqué no grabas directamente el HEX que dices que funciona bien para el 16F628 ?
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)

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 2312
Re: 16f628 --> 16F628a
« Respuesta #4 en: 27 de Septiembre de 2006, 18:36:46 »
veras maunix, no es un archivo que yo haya creado sino que forma parte de un prototipo que encontre en internet y quisiera probar pero es para un 16f628, de ahi la consulta. su autor cede el .hex y el .asm y crei que si el .hex no funcionase podria adaptar el .asm para migrar a un 16f628a.

lo que pasa es que siempre me lio y la cosa seria mas clara con una consulta del estilo ¿que se debe tener en cuenta para migrar un codigo hecho para un 16f628 a un 16f628a?.

te dire lo que voy hacer: montare el circuito y programare un 16f628a con el .hex y a partir de ahi veremos que sucede, que creo que es lo mas sensato

ya os contare

un saludo

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 2312
Re: 16f628 --> 16F628a
« Respuesta #5 en: 29 de Septiembre de 2006, 13:53:04 »
hola

he probado ya el tema montando el circuito y programando el pic con el .hex original y sencillamente no funciona.

edite el .asm y cambie la llamada al include del pic y añadi & _BOREN_OFF en el _CONFIG, ademas segun indicaciones del propio programa añadi una llamada a una macro (suerte que el programa esta muy bien documentado)

aproveche para ver las diferencias de los include y practicamente no existen. el pic 16f628a incorpora algunas cosas unicamente para mantener la compatibilidad con el 16f628... tuve suerte, mucha suerte...

compile, probe y funciona bien, asi que muchas gracias mauricio por estar siempre ahi

saludos

pd: el circuito es un sencillo frecuencimetro basado en un pic y displays de 7 segmentos para mostrar la lectura. en las primeras pruebas que hice el resultado es decente (ojo! lo utilizo para niveles ttl y onda cuadrada unicamente). si os interesa decirmelo.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: 16f628 --> 16F628a
« Respuesta #6 en: 29 de Septiembre de 2006, 14:46:38 »
hola

he probado ya el tema montando el circuito y programando el pic con el .hex original y sencillamente no funciona.

edite el .asm y cambie la llamada al include del pic y añadi & _BOREN_OFF en el _CONFIG, ademas segun indicaciones del propio programa añadi una llamada a una macro (suerte que el programa esta muy bien documentado)

aproveche para ver las diferencias de los include y practicamente no existen. el pic 16f628a incorpora algunas cosas unicamente para mantener la compatibilidad con el 16f628... tuve suerte, mucha suerte...

compile, probe y funciona bien, asi que muchas gracias mauricio por estar siempre ahi

saludos

pd: el circuito es un sencillo frecuencimetro basado en un pic y displays de 7 segmentos para mostrar la lectura. en las primeras pruebas que hice el resultado es decente (ojo! lo utilizo para niveles ttl y onda cuadrada unicamente). si os interesa decirmelo.

No es nada.

El frecuencímetro del hablas, es uno que es hasta 50MHz? con precisión de 1Hz? hablamos del mismo?

- 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)

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 2312
Re: 16f628 --> 16F628a
« Respuesta #7 en: 29 de Septiembre de 2006, 14:58:01 »
hablamos del mismo... lo has pobado...?

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: 16f628 --> 16F628a
« Respuesta #8 en: 29 de Septiembre de 2006, 17:55:00 »
hablamos del mismo... lo has pobado...?

No, pero me lo pasaron hace un tiempo y nunca tuve tiempo de armarlo, aunque segun recuerdo creo que era para un solo tono no?


Segun algunos comentarios que leí, muchos se basaron en la idea para desarrollar otros frecuencímetros profesionales.  En realidad ese concepto del manejo del timer como contador, funcionando mucho más veloz que la frecuencia normal valiéndose del prescaler es terriblemente ingenioso.

De todas formas, como te dije, no lo he probado pero la teoría de funcionamiento parece bastante lógica.

 :) :)
- 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)

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 2312
Re: 16f628 --> 16F628a
« Respuesta #9 en: 29 de Septiembre de 2006, 18:10:40 »
bueno, pues te tendre informado de las pruebas que realice, porque hasta ahora no lo tengo suficientemente 'trasteado'

crees que era para un solo tono... no entiendo que quieres decir. segun creo, este tipo de circuitos, de funcionar bien, lo hacen con niveles ttl y ondas cuadradas con un 'duty cycle' de un 50% a su entrada ('duty cycle'  :( :( quieres creer que no recuerdo ahora mismo como se dice en castellano?? ) y los problemas mas serios estan en la etapa de entrada y en manejar otro tipo de ondas pero tampoco me hagas mucho caso

un saludo

descargasric

  • Visitante
Re: 16f628 --> 16F628a
« Respuesta #10 en: 29 de Septiembre de 2006, 23:09:32 »
Hola soy nuevo en esto de los PIC y tengo una pregunta si alguien me quiere ayudar se lo agradecere mucho.

el proyecto que tengo que hacer es encender las luces de 3 habitaciones desde una pc ya logre la comunicacion con un pic 16f84 me dicen que los pic 16f628 son mejores.

El problema es que cada habitacion tiene 3 swict y se tienen que encender mi idea es ponerle una direccion al pic, y si esta direccion corresponde a ese pic encender la luz que se indica sin afectar el estado de las otras.
« Última modificación: 29 de Septiembre de 2006, 23:21:44 por descargasric »

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 2312
Re: 16f628 --> 16F628a
« Respuesta #11 en: 30 de Septiembre de 2006, 13:12:00 »
hola descargasric, bienvenido al foro.

veamos, no estoy seguro de entender tus necesidades asi que como diria jack el destripador: vayamos por partes.

tienes que encencer las luces de tres habitaciones desde una pc o desde un pic programado para ello, o acaso la pc le administrara al pic los datos necesarios y este actuara en funcion de lo que reciba...??? primera cuestion

en cada habitacion dices que hay tres switches pero no indicas la funcion de estos (al menos yo no la veo) hay una luz por habitacion y se enciende y apaga desde cualquiera de los switches o como es el tema..?? o es que hay mas de una luz por habitacion (en concreto tres)...?? segunda cuestion

si hay diferencias entre el 16f84a y el 16f628a, este ultimo es mas reciente e incorpora algunas cosas mas, y ademas es mas economico. aunque para este caso te dara lo mismo segun creo uno que otro (quiero decir que si ya dispones del 16f84a no necesitaras comprarte el 16f628a)

espero haberte sido de ayuda y recibe un saludo

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: 16f628 --> 16F628a
« Respuesta #12 en: 30 de Septiembre de 2006, 14:14:52 »
Hola soy nuevo en esto de los PIC y tengo una pregunta si alguien me quiere ayudar se lo agradecere mucho.

el proyecto que tengo que hacer es encender las luces de 3 habitaciones desde una pc ya logre la comunicacion con un pic 16f84 me dicen que los pic 16f628 son mejores.

El problema es que cada habitacion tiene 3 swict y se tienen que encender mi idea es ponerle una direccion al pic, y si esta direccion corresponde a ese pic encender la luz que se indica sin afectar el estado de las otras.


Y como piensas hacer la comunicacíon entre los pics? RF? X10? rs485? otro?
- 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)


 

anything