• Domingo 22 de Diciembre de 2024, 12:47

Autor Tema:  Istrucciones De Los Pic  (Leído 1619 veces)

karen81

  • Miembro MUY activo
  • ***
  • Mensajes: 119
    • Ver Perfil
Istrucciones De Los Pic
« en: Domingo 1 de Febrero de 2004, 05:11 »
0
:huh:  una pregunta sobre programas en pic.
si tengo unos datos en las siguientes localidades
0000= 02
0001= 05
0002= 01

y he definido

datos equ 0x00

para accesar a estos datos en una rutina
lo que hago es tomo de la 0000 a 02
pero el problema es que para tomar a 05 no se como hacer
intente colocando
incf datos, para que supuestamente me ubicara en la 0001 y me permitiera sacar
a 05 pero no, lo que hace es aumentar a 02 por 03, no se como hacer esto   :( ¡¡¡¡¡¡¡¡¡¡¡¡ayuda urgente !!!!!!!!!!!!!!!!!!!!!!!!!!!  :scream:
karengiraldo81@hotmail.com
No basta tener buen ingenio; lo principal es aplicarlo bien.

lmarte

  • Miembro activo
  • **
  • Mensajes: 73
    • Ver Perfil
Re: Istrucciones De Los Pic
« Respuesta #1 en: Lunes 2 de Febrero de 2004, 15:03 »
0
Hola Karen, como estas?
Mira lo que deseas hacer se llama direccionamiento indirecto y necesitas utilizar los registros FSR e INDF, el fsr es quien te mantiene la dirección que tu estas utilizando y el INDF es quien te mantiene el valor de la dirección asignada a FSR, así que lo que tienes que hacer es algo como

movlw   00h          
movwf   FSR           ;direccionaste fsr a la 00
MOVLW  02H
MOVWF  INDF          ;en esa direción 00 colocaste el valor 02h
INCF      FSR,1        ; direccionaste en fsr +1 o sea en 01
MOVLW  "EL VALOR Q QUIERES"
MOVWF  INDF          ; colocas en la direción 01 el valor q quieras

Esto es para escribir, para leer el dato es lo mismo incrementas FSR y luego colocas INDF en W (movf INDF,0) y listo

Espero haberme hecho entender y ser de ayuda B) .
Un saludo

Leo
Si no se intenta, ... no se hace

karen81

  • Miembro MUY activo
  • ***
  • Mensajes: 119
    • Ver Perfil
Re: Istrucciones De Los Pic
« Respuesta #2 en: Lunes 2 de Febrero de 2004, 18:11 »
0
Cita de: "lmarte"
Hola Karen, como estas?
Mira lo que deseas hacer se llama direccionamiento indirecto y necesitas utilizar los registros FSR e INDF, el fsr es quien te mantiene la dirección que tu estas utilizando y el INDF es quien te mantiene el valor de la dirección asignada a FSR, así que lo que tienes que hacer es algo como

movlw   00h          
movwf   FSR           ;direccionaste fsr a la 00
MOVLW  02H
MOVWF  INDF          ;en esa direción 00 colocaste el valor 02h
INCF      FSR,1        ; direccionaste en fsr +1 o sea en 01
MOVLW  "EL VALOR Q QUIERES"
MOVWF  INDF          ; colocas en la direción 01 el valor q quieras

Esto es para escribir, para leer el dato es lo mismo incrementas FSR y luego colocas INDF en W (movf INDF,0) y listo

Espero haberme hecho entender y ser de ayuda B) .
Un saludo

Leo
 :) ok. entendi bien.
gracias   :comp:
No basta tener buen ingenio; lo principal es aplicarlo bien.