Autor Tema: PC - PCL - PCLATH - FSR & DIRECCIONAMIENTO DIRECTO E INDIRECTO  (Leído 2787 veces)

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

Desconectado WORBVU

  • PIC10
  • *
  • Mensajes: 16
BUENAS, BUENAS. TENGO UNAS PREGUNTAS QUE A MI JUICIO SON INTERESANTES PARA TODOS. CABE TENER UN MUY BUENA CLARIDAD SOBRE ESTAS. ESPERO QUE TODAS AQUELLAS PERSONAS QUE PUEDAN APORTAR BUENOS CONOCIMIENTOS, NO DUDEN EN HACERLO.

QUE SON Y EJEMPLOS:
1. EL PC.
2. EL PCL.
3. EL PCLATH.
4. EL FSR.

POR ULTIMO OTRAS MUY IMPORTANTES PREGUNTAS (EJEMPLOS):

1. QUE ES EL DIRECCIONAMIENTO DIRECTO E INDIRECTO.
2. COMO SE REALIZAN

Desconectado escorpion151177

  • PIC12
  • **
  • Mensajes: 61
RE: PC - PCL - PCLATH - FSR & DIRECCIONAMIENTO DIRECTO E INDIRECTO
« Respuesta #1 en: 29 de Mayo de 2005, 23:44:00 »
HOLA ! ESPERO PODER AYUDARTE

el PC. es el contador de programa, es decir, es un registro de 13 bits en el cual esta almacenada la direccion de la proxima instruccion a ejecutarce en la memoria de programa

Ademas, el contador de programa PC, esta compuesto justamente por los registros PCL Y PCLATH. es decir. los primeros ocho bits de PC son los correspondientes a los bits de PCL, y los ultimos cinco bits de PC, corresponde a los cinco bits de menor peso de PCLATH. Entonces, tanto PCL y PCLATH en conjunto son los que participan en el direccionamiento de la memoria de programa.

asi como pcl y pclath son para la memoria de programa, ... FSR lo es para el banco de registros.  el bit 7 del registro de estado junto con FSR,  direccionan el banco de registros. Ese es el direccionamiento indirecto. es decir. entre el bit 7 del registro de ESTADO y el bit 7 del regitro FSR  selecionan el banco en el cual se va a trabajar, y los 6 bits de menor peso restantes del FSR direcciona dentro de ese banco. (el funcionamiento del direccionamiento indirecto es analogo al de un puntero en C )

el direccionamiento directo es el clasico. es decir con los bits 5 y 6 del registro de ESTADO se selecciona el banco a acceder y en este caso la direccion de ese banco serian los  7 bits de menor peso del registro de instrucciones.

se qeu te gustaria un ejemplo del direccionamiento indirecto. pero no lo tengo muy claro como para hacer un programita ahora, porque nunca lo use. lo que te puedo decir es que ese FSR trabaja en conjunto con INDF.

bueno, espero que te sirva lo que te conte


Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: PC - PCL - PCLATH - FSR & DIRECCIONAMIENTO DIRECTO E INDIRECTO
« Respuesta #2 en: 30 de Mayo de 2005, 04:29:00 »
Aqui tienes un ejemplo de uso del direccionamiento indirecto. La rutina guarda un "espacio" en los registros desde el 0x40 hasta el 0x5F, que son los registros utilizados para la visualización de un display LCD de 2x16.

Codigo:
;CLEAR: Borra los registros del LCD

clear   movlw   0x40
   movwf   fsr
clear1   movf   fsr,w
   sublw   0x60
   btfsc   status,2
   return
   movlw   " "
   movwf   indf
   incf   fsr,f
   goto   clear1


Como puedes ver ahorra bastante espacio, ya que mediante direccionamiento directo tendría que hacerse asi:

Codigo:
;CLEAR: Borra los regsitros del LCD(Direccionamiento directo)

clear   movlw   " "
   movwf   0x40
   movwf   0x41
   movwf   0x42
   movwf   0x43
-------------------------------
-------------------------------
   movwf   0x5F
   return


 

anything