TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: el_Petrosky en 20 de Octubre de 2018, 01:21:52

Título: duda
Publicado por: el_Petrosky en 20 de Octubre de 2018, 01:21:52
 :5] cuando uno crea registros de proposito especifico generalmente se pueden crear desde la posicion 0x20 pero porque cuando se inicia un codigo generalmente es en la 5!!? no ndeberia empezar al menos en la 20 porque de ahi para abajo estan reservadas esas direcciones? gracias. :s
Título: Re:duda
Publicado por: KILLERJC en 20 de Octubre de 2018, 09:44:18
:5] cuando uno crea registros de proposito especifico generalmente se pueden crear desde la posicion 0x20 pero porque cuando se inicia un codigo generalmente es en la 5!!? no ndeberia empezar al menos en la 20 porque de ahi para abajo estan reservadas esas direcciones? gracias. :s

Me parece que hay una equivocacion... Primero por una mala practica si es lo que creo... Yo imagino que lo que vos te preguntas es el ejemplo que voy a escribir aca:

Código: ASM
  1. ORG 0x00
  2.    GOTO INICIO
  3.    ORG 0x04
  4.    GOTO INTERRUPCION
  5.  
  6.    ORG 0x05
  7. INICIO:
  8.     ; Aca mi codigo

Muchas veces veo eso, a veces incluso sin el 0x04 que es la interrupcion. Y te diria que es mala practica poner el 0x05, el ORG hace que las instrucciones que le siguen se ubiquen en la FLASH a partir de esa direccion. La FLASH es donde esta mi programa.

Citar
cuando uno crea registros de proposito especifico generalmente se pueden crear desde la posicion 0x20

Algunos PIC poseen otra direccion de comienzo de los registros para el usuario. PERO esta direccion es de otra memoria, es la RAM, una memoria distinta de la FLASH.

Espero que eso conteste a tu pregunta, sino podes mostrarme un ejemplo donde ocurre lo que me planteas y lo vemos.