Autor Tema: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.  (Leído 3164 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado GUEORK

  • PIC10
  • *
  • Mensajes: 20
Hay algunas cosillas que no comprendo de lo que estoy estudiando y otras que me gustaría aclarar si alguien ya pasó por estas.
1)Primeramente el porqué de la modificación que sugiere el libro en la pág. 70 de cambiar la instrucción "clrf TRISB" por "clrf PORTB", argumentando que tienen el mismo código de máquina, pero que de hecho el registro que configura las líneas del puerto B es TRISB y no PORTB. (Ya sé que funciona igual). Luego en la pág. 86 se vé como el probrama MPLAB emite mensajes de advertencia sobre que el registro no opera en el banco 0 (cuando el registro TRISB está en el banco 1 y no en el banco 0), y se vuelve a hacer la recomendación de cambiar las instrucciones intercambiando "TRISA" por "PORTA" y "TRISB" por "PORTB". Ahora bien, en lo sucesivo y en todos los programas ejemplo del libro utiliza TRISA y TRISB para configurar los puertos (como corresponde) y no PORTA y PORTB, (la modificación que se realizó en el primer programa no se tuvo más en cuenta ni se vuelve a mencionar).
2)También la primera instrucción “ORG 0” podría obviarse ya que según explica en la pág. 600 si no hay ningún ORG especificado la generación del código comienza en la dirección cero; (interpreto que toma por defecto que el programa comienza en la dirección cero).
3)Otra directiva del programa “Ensam_03.asm” (pag. 69) que pienso que podría obviarse es la configuración del puerto A como entrada. Si tras un reset o cuando se activa el PIC tanto los registros TRISA como TRISB se configuran automáticamente como entradas, pienso que es redundante cargar a uno las cinco posiciones del TRISA nuevamente, cuando ya lo hizo la situación del reset.

Espero vuestros comentarios. GRACIAS.

Desconectado adrian2a1

  • Colaborador
  • PIC12
  • *****
  • Mensajes: 75
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #1 en: 01 de Noviembre de 2004, 10:21:00 »
Preguntale directamente a los autores en www.pic16f84a.com. A mí me contestan siempre a todas las consultas que les hago sobre el libro.

Saludos desde Cuenca.

Desconectado rferrero

  • PIC16
  • ***
  • Mensajes: 113
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #2 en: 01 de Noviembre de 2004, 16:19:00 »

   Hola.

   1-Fíjate en el mapa de memoria. Está dividido en 4 bancos. En ensamblador es un tostón andar cambiando de un banco a otro para inicializar registros y demás. En el banco 0 está porta (0x05) y en el banco 1, en la misma dirección (0x05), trisa. Entonces, para no andar pasando del banco 0 al 1 y viceversa, se aprovecha que tienen la misma dirección el puerto y su configuración.

    2-Lo de org 0x00, pues porque no está de más ponerlo porque, normalmente, se pone después una etiqueta que salta el vector de interrupción, en 0x05. Así, poniendo org 0x00, puedes poner después dicho salto y referirlo a esa dirección. Así es posible lo anterior. Si no lo pones, cómo sabe el programa en qué momento debe saltar el vector de interrupción?? Se ejecutarían seguidas y pasaría por dicho vector, dando problemas en la ejecución del programa.

    3-Pues porque siempre se inicializa un micro. Aunque SE SUPONGA que éste comienza con tal o cual valor en el registro o configuración. Ten en cuenta que puede haber ruido en las señales y no inicializarse él solo correctamente. Conviene FIJAR esa inicialización y asegurarse.

    No te preocupes, con el tiempo irás teniendo más visión en cojunto acerca de este mundo y ya verás cómo las dudas que tienes ahora te parecerán más adelante una tontería.
    Un saludo.
    Rebotado

Desconectado GUEORK

  • PIC10
  • *
  • Mensajes: 20
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #3 en: 03 de Noviembre de 2004, 15:32:00 »
HOLA AMIGO:
Muchas gracias por tus respuestas. Con respecto al punto 1 lo que no me queda claro es porqué en el libro hace dos veces la salvedad de cambiar TRISA por PORTA, etc (y de hecho el MPLAB da el mensaje de advertencia, porque me lo ha dado) y luego en todo el capitulo 7 cuando muestra los ejemplos de simulación y en el resto del libro con todos los otros programas siempre está usado TRISA y TRISB y nunca más se hace referencia a este problema ni se configuran los puertos usando PORTA o PORTB.??? Entonces: ¿en los programas que haga, qué pongo al final; PORTA y PORTB, o como está en el resto del libro TRISA y TRISB a pesar que dice que está "mal" y que da mensajes de advertencia??
Otra pregunta: Cuando en el MPLAB abro un archivo que estába guardado no lo puedo simular. En la pag. 84 pone que en el momento que se ensambla un programa ".asm" pasa a la memoria de simulación. Ahora, si ya está ensamblado y se generaron los ficheros correspondientes (.hex, etc). ¿cómo hago para pasarlo a la memoria de simulación sin tener que ensamblarlo otra vez?
Bueno, poco a poco voy avanzando... gracias por todo.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4069
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #4 en: 03 de Noviembre de 2004, 16:14:00 »
Hola Gueork:
Respecto al uso de porta y B con tris a y b. Entiendom que lo ideal es usar tris a y b para la configuracion y porta y b para el amnejo de los pines del puerto. Así el programa me parece que es más inteligible.
Los mensajes que te da en MPLAB no son "error" sino "Warning", es decir avisos para que estes seguro de en que banco estas. De hecho si ves el programa estára compilado completamente.
Para realizar la simulacion tienes que cargar primero el ficgero compilado es decir con extensión "hex". En el libro que indicas, no recuerdo la página, hay un capitulo para el manejo del MPlab, configuracion y simulacion.
Un saludo Fermin
Todos los días se aprende algo nuevo.

Desconectado GUEORK

  • PIC10
  • *
  • Mensajes: 20
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #5 en: 07 de Noviembre de 2004, 12:33:00 »
HOLA. Lo que he probado hasta ahora es cargar (abrir) desde el MPLAB un fichero .hex, y me lo presenta en una ventana. Ahora, cuando quiero abrir una ventana de, por ej, los registros u otra para ver la simulación, me pone todo en cero. Bueno, seguiré buscando.
Si lo compilo nuevamente luego sí puedo simularlo, pero me parece que no voy a compilar tantas veces los programas como quiera simularlos, debe haber una forma más fácil. (Debe estar delante de mi nariz).
Gracias a todos por los datos.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4069
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #6 en: 08 de Noviembre de 2004, 15:37:00 »
Hola Gueork:
Mira con el MPlab, cuando tienes creado el proyecto y cargados todos los ficheros include (si los tienes) y una vez que tienes el fichero en asm (por ejemplo) cargado;
cuando haces un Build All o un Make, dependiendo de lo que hayas cambiado en el fichero fuente, si no tienes errores de compilacion, ya tienes generado el fichero hex.
Ahora si vas a "WIEW" puedes seleccionar las ventanas que quieras ver para realizar la simulación.
Pienso que es tan simple como eso y no necesitas cargar nuevamente el hex, ya se queda cargado cuando haces la compilación.
UN saludo F.
Todos los días se aprende algo nuevo.

Desconectado Micom

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 782
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #7 en: 08 de Noviembre de 2004, 22:11:00 »
MIra cuando has creado un proyecto y lo has guardado y quieres volver a ese proyecto recuerda abrir el proyecto no el ASM ni el HEX ya que cuando abres el proyecto se carga todo en memoria para la simulacion ademas dime que vercion de Mplab usas?
El programador GTP USB PLUS es un super programador
GRACIAS dobles amigo SISPIC

Tan solo queda seguir sobreviviendo

Desconectado GUEORK

  • PIC10
  • *
  • Mensajes: 20
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #8 en: 14 de Noviembre de 2004, 11:14:00 »
HOLA:
Gracias a todos por las contestaciones. El MPLAB que uso es el que me vino en el CD con el libro y me pone que es versión 6.40.00.0, luego pone las versiones individuales de cada parte del programa en una ventanita (hay un montón), por ej, el MPALB SIM30 tiene versión 2.40.00.00 y el MPSim la versión 8.40.00.0. Esto lo ví dentro del desplegable "Help" en "About MPLAB IDE... "
Otra cosa, el problema que tengo, por lo que veo es que no tengo hecho ningún proyecto y no sé bien cómo hacerlo. Voy a mirar un poco más. Entiendo bastante inglés, pero igualmente no capto bien todavía cómo abrir el proyecto y todo eso. Por lo poco que estuve leyendo en el Help, me dí cuenta que eso es lo que debo hacer. Si conoces algún sitio en donde esté el Help del MPLAB en español te agradecería me lo pasaras. Bueno, seguiré intentando. Luego publicaré unas dudas que  tengo con un programita tonto. Hasta la próxima PIC-AMIGOS!!!!

Desconectado GUEORK

  • PIC10
  • *
  • Mensajes: 20
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #9 en: 14 de Noviembre de 2004, 11:47:00 »
Hola:
En la dirección: http://teleline.terra.es/personal/fremiro/hay un manual completo sobre el MPLAB IDE en español, también sobre el ICPROG. Esta página es de uno de los autores del libro PIC16F84 de Editorial RAMA, tiene muchas otras cosas. Bye.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4069
RE: Para alguien que use el libro PIC16F84 de Editorial RAMA y esté un poco avanzado.
« Respuesta #10 en: 16 de Noviembre de 2004, 11:17:00 »
Hola: para crear un proyeecto nuevo tienes que realizar los siguientes pasos:

New
Wizard y el te va pidiendo una serie de datos que debes ir rellenado como la direccion del ensamblador, nonbre de proyecto, tipo de PIc tilizado,.....
Al final tendrás el proyecto creado
Saludos Fermín
Todos los días se aprende algo nuevo.