Está en la página 1de 8

08/04/2015

UNIVERSIDAD PRIVADA ANTENOR ORREGO

CREACION Y MANEJO DE TABLAS


Ing. Lenin Llanos Len

Tablas de Datos en Memoria de


Programa

Una tabla de datos en la memoria ROM de programa


es una lista de constantes que el programa puede
recoger mediante la instruccin retlw.
La instruccin retlw (Return with Literal in W), funciona
de manera similar que return, produce el retorno de
una subrutina pero con un valor en el registro W.

Dicha caracterstica es de suma importancia cuando se


desea acceder a tablas de datos en la memoria de
programa.

08/04/2015

Tablas de Datos en Memoria de


Programa

El formato de esta instruccin es:


retlw k

Donde k es el valor de la constante que se carga en


el registro de trabajo W.
Una de las mayores aplicaciones del manejo de tablas
de datos, es la resolucin de tablas de verdad.
Antes de ver un ejemplo explicaremos el registro PC
(Contador de Programa)

Tablas de Datos en Memoria de


Programa

El contador de Programa (PC) es un registro


interno de 13 bits que se utiliza para direccionar
las instrucciones del programa de control que estn
almacenadas en la memoria de programa.
Este registro contiene la direccin de la prxima
instruccin a ejecutar y se incrementa
automticamente.

08/04/2015

Tablas de Datos en Memoria de


Programa

La parte alta del contador de programa (PCH) no


se puede acceder directamente, ella debe cargarse
desde los 5 bits mas bajos del registro PCLATCH
(direccin 0x0A).
En la creacin de tablas, la posicin a leer se
realiza con el control del registro PCL.

Tablas de Datos en Memoria de


Programa

La creacin de la tabla se har de la siguiente


forma:

Para un mejor entendimiento veremos el siguiente


ejemplo:

08/04/2015

Tablas de Datos en Memoria de


Programa

Ejemplo: Se desea visualizar en un display 7 segmentos


nmeros de 0 a 9, los cuales sern ingresados en binario
(4 bits). Si el numero ingresado es mayor que 9 el display
deber apagarse.
Para empezar se construir una tabla de verdad, en la
cual se asignar el estado de los segmentos del display
segn sea la entrada.

Tablas de Datos en Memoria de


Programa
D

Hex

3F

06

5B

4F

66

6D

7D

07

7F

67

00

10 - 15

08/04/2015

Tablas de Datos en Memoria de


Programa
0

U1
16
15
4

RA7/OSC1/CLKIN
RA0/AN0
RA6/OSC2/CLKOUT
RA1/AN1
RA2/AN2/CVREF/VREFRA5/MCLR RA3/AN3/C1OUT/VREF+
RA4/AN4/T0CKI/C2OUT
RB0/INT/CCP1
RB1/SDI/SDA
RB2/SDO/RX/DT
RB3/CCP1
RB4/SCK/SCL
RB5/SS/TX/CK
RB6/AN5/T1OSO/T1CKI
RB7/AN6/T1OSI
PIC16F88

17
18
1
2
3
6
7
8
9
10
11
12
13

RN1
1
2
3
4
5
6
7
8

16
15
14
13
12
11
10
9
330

Tablas de Datos en Memoria de


Programa

08/04/2015

Tablas de Datos en Memoria de


Programa

Tablas de Datos en Memoria de


Programa

08/04/2015

Tablas de Datos en Memoria de


Programa

Tablas de Datos en Memoria de


Programa

08/04/2015

Tablas de Datos en Memoria de


Programa

Tablas de Datos en Memoria de


Programa