Autor Tema: Punteros de ram, ¿como se usan?  (Leído 3394 veces)

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

Desconectado ErnestAl

  • PIC10
  • *
  • Mensajes: 37
Punteros de ram, ¿como se usan?
« en: 20 de Junio de 2007, 19:27:45 »
Hola, alguien me puede responder a la pregunta de si usar punteros de ram y direccionamiento indirecto en assambler es lo mismo ¿? :? :? :? :? :? :? :? :?

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Punteros de ram, ¿como se usan?
« Respuesta #1 en: 20 de Junio de 2007, 19:57:29 »
Hola, alguien me puede responder a la pregunta de si usar punteros de ram y direccionamiento indirecto en assambler es lo mismo ¿? :? :? :? :? :? :? :? :?

Un direccionamiento indirecto sería la efectivización del uso de un puntero.  El puntero en realidad sería otro registro (que tenga un nombre que vos elijas) que dice a donde debe apuntar y el FSR es quien termina ejecutando la acción.



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

  • PIC10
  • *
  • Mensajes: 37
Re: Punteros de ram, ¿como se usan?
« Respuesta #2 en: 21 de Junio de 2007, 10:28:54 »
Entonces si quisiera almacenar 100bytes recibidos por la USART y almacenarlos en el banco1 de la ram, ¿funcionaria la siguiente rutina de atencion a la interrupcion producida por la USAR?

                    MOVLW    H'80'
                    MOVWF   FSR
  guarda        BCF         STATUS,IRP
                    BSF         STATUS,RP0
                    BCF         STATUS,RP1 ;aCCESO AL BANK1
                    MOVF       TEMP,W
                    MOVWF    INDF
                    INCF         FSR,F
                    DECFSZ    CONTA
                    RETURN        ;SALGO PQ YA HE GUARDADO
                    GOTO         FIN    ;SALIDA PARA APAGAR EL PIC

Siento los posibles fallos,todavia estoy en fase de aprendizaje

   GRACIAS
                   

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Punteros de ram, ¿como se usan?
« Respuesta #3 en: 21 de Junio de 2007, 11:52:05 »
Asi como está funcionaría si TEMP está en el banco 1.

Si TEMP está en el banco 0 , no hace falta usar los bits de RP0 y RP1.  El direccionamiento indirecto apunta a 256 bytes a la vez y solo necesitas tocar el bit STATUS<IRP>

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

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Punteros de ram, ¿como se usan?
« Respuesta #4 en: 21 de Junio de 2007, 11:57:14 »
Para que lo veas más fácil:

Si bit IRP  = 0 entonces:

FSR puede apuntar desde la posicion 0x00 hasta la 0xFF.

Si bit IRP  = 1 entonces:

FSR puede apuntar desde la posicion 0x100 hasta la 0x1FF.

Por lo que si querés apuntar a la posición 0xF0 de memoria RAM, IRP debería estar a cero y simplemente cargas el valor 0xF0 en el registro FSR.
Posteriormente, con el INDF afectas su contenido.

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 ErnestAl

  • PIC10
  • *
  • Mensajes: 37
Re: Punteros de ram, ¿como se usan?
« Respuesta #5 en: 21 de Junio de 2007, 16:35:55 »
¿Y como puedo hacer para que el registro temp este en el banco 1?

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Punteros de ram, ¿como se usan?
« Respuesta #6 en: 21 de Junio de 2007, 18:49:45 »
¿Y como puedo hacer para que el registro temp este en el banco 1?

Declararlo en una posición como 0xA0 por ejemplo


TEMP equ 0xA0

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

  • PIC10
  • *
  • Mensajes: 37
Re: Punteros de ram, ¿como se usan?
« Respuesta #7 en: 21 de Junio de 2007, 19:02:19 »
creo que de vez en cuando una repasada al datasheet no vendria mal  :oops: :oops:

 gracias!!!!

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Punteros de ram, ¿como se usan?
« Respuesta #8 en: 22 de Junio de 2007, 08:36:30 »
creo que de vez en cuando una repasada al datasheet no vendria mal  :oops: :oops:

 gracias!!!!

Jajaja, y ... digamos que si  :mrgreen: :mrgreen:
- 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