ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Manual De Pic´s

cacatuo219 de Septiembre de 2013

13.675 Palabras (55 Páginas)347 Visitas

Página 1 de 55

MANUAL DE MICROCONTROLADORES PIC

Contenido:

CAPITULO 1

Introducción a los microcontroladores ( Microcontroladores PIC de Microchip)

CAPITULO 2

Programación en lenguaje ensamblador

CAPITULO 3

Técnicas en lenguaje ensamblador

CAPITULO 4

Experimentos Introductorios

CAPITULO 5

Experimentos avanzados

1.1 Arquitectura Harvard La arquitectura tradicional:

La arquitectura tradicional de computadoras y microprocesadores se basa en el esquema

propuesto por John Von Neumann, en el cual la unidad central de proceso, o CPU, esta

conectada a una memoria única que contiene las instrucciones del programa y los datos

(figura 1.1.1). El tamaño de la unidad de datos o instrucciones esta fijado por el ancho del

bus de la memoria. Es decir que un microprocesador de 8 bits, que tiene además un bus

de 8 bits que lo conecta con la memoria, deberá manejar datos e instrucciones de una o

más unidades de 8 bits (bytes) de longitud. Cuando deba acceder a una instrucción o dato

de más de un byte de longitud, deberá realizar más de un acceso a la memoria. Por otro

lado este bus único limita la velocidad de operación del microprocesador, ya que no se

puede buscar de memoria una nueva instrucción, antes de que finalicen las transferencias

de datos que pudieran resultar de la instrucción anterior. Es decir que las dos principales

limitaciones de esta arquitectura tradicional son :

a) que la longitud de las instrucciones esta limitada por la unidad de longitud de los datos,

por lo tanto el microprocesador debe hacer varios accesos a memoria para buscar

instrucciones complejas,

b) que la velocidad de operación (o ancho de banda de operación) esta limitada por el

efecto de cuello de botella que significa un bus único para datos e instrucciones que

impide superponer ambos tiempos de acceso.

La arquitectura von Neumann permite el diseño de programas con código automodificable,

práctica bastante usada en las antiguas computadoras que solo tenían acumulador y

pocos modos de direccionamiento, pero innecesaria, en las computadoras modernas.

FIG. 1.1.1 Arquitectura Von Newmann

La arquitectura Harvard y sus ventajas:

La arquitectura conocida como Harvard, consiste simplemente en un esquema en el que el

CPU esta conectado a dos memorias por intermedio de dos buses separados. Una de las

memorias contiene solamente las instrucciones del programa, y es llamada Memoria de

Programa. La otra memoria solo almacena los datos y es llamada Memoria de Datos

(figura 1.1.2). Ambos buses son totalmente independientes y pueden ser de distintos

anchos. Para un procesador de Set de Instrucciones Reducido, o RISC (Reduced

Instrucción Set Computer), el set de instrucciones y el bus de la memoria de programa

pueden diseñarse de manera tal que todas las instrucciones tengan una sola posición de

memoria de programa de longitud. Además, como los buses son independientes, el CPU

puede estar accediendo a los datos para completar la ejecución de una instrucción, y al

mismo tiempo estar leyendo la próxima instrucción a ejecutar. Se puede observar

claramente que las principales ventajas de esta arquitectura son:

a) que el tamaño de las instrucciones no esta relacionado con el de los datos, y por lo

tanto puede ser optimizado para que cualquier instrucción ocupe una sola posición de

memoria de programa, logrando así mayor velocidad y menor longitud de programa,

b) que el tiempo de acceso a las instrucciones puede superponerse con el de los datos,

logrando una mayor velocidad de operación.

Una pequeña desventaja de los procesadores con arquitectura Harvard, es que deben

poseer instrucciones especiales para acceder a tablas de valores constantes que pueda ser

necesario incluir en los programas, ya que estas tablas se encontraran físicamente en la

memoria de programa (por ejemplo en la EPROM de un microprocesador).

FIG. 1.1.2 Arquitectura Harvard

Los microcontroladores PIC 16C5X, 16CXX y 17CXX poseen arquitectura Harvard, con una

memoria de datos de 8 bits, y una memoria de programa que, según el modelo, puede ser

de 12 bits para los 16C5X, 14 bits para los 16CXX y 16 bits para los 17CXX.

1.2 Diagrama de bloques

Diagrama de bloques de los microcontroladores PIC16F8X

1.3 Mapas de memoria Memoria Interna (RAM)

Organización

La memoria interna de datos, también llamada archivo de registros (register file), esta

dividida en dos grupos: los registros especiales, y los registros de propósito generales. Los

primeros ocupan las 11 posiciones primeras que van desde la 00 a la 0B, y los segundos

las posiciones que siguen, o sea de la 08 a la 4F.

Los registros especiales contienen la palabra de estado (STATUS), los registros de datos

de los tres puertos de entrada salida (Puerto A, Puerto B, Puerto C), los 8 bits menos

significativos del program counter (PC), el contador del Real Time Clock/Counter (RTCC) y

un registro puntero llamado File Select Register (FSR). La posición 00 no contiene ningún

registro en especial y es utilizada en el mecanismo de direccionamiento indirecto.

Los registros de propósito general se dividen en dos grupos : los registros de posición fija

y los bancos de registros. Los primeros ocupan las 8 posiciones que van de la 08 a la 0F.

los bancos de registros consisten en hasta cuatro grupos o bancos de 16 registros cada

uno, que se encuentran superpuestos en las direcciones que van de la 10 a la 1F. Se

puede operar con un solo banco a la vez, el cual se selecciona mediante los bits 5 y 6 del

File Select Register (FSR)

FIG. 1.3.1 Organización de la memoria Interna (RAM) en la familia PIC16C5X

Memoria de Programa

Organización

La memoria de programa, que en los PIC16C5X puede ser de 512 a 2K instrucciones, debe

ser considerada a los efectos de la programación, como compuesta por secciones o

páginas de 512 posiciones. A su vez cada página debe considerarse dividida en dos

mitades de 128 posiciones cada una. Esto se debe, como se verá, a las limitaciones de

direccionamiento de las instrucciones de salto

FIG. 1.3.2 Organización de la memoria de programa en la familia PIC16C5X

1.4 Registros de funciones especiales Camino de los datos y registro W

La figura 1.4.2 representa un diagrama simplificado de la arquitectura interna del camino

de los datos en el CPU de los microcontroladores PIC. Este diagrama puede no representar

con exactitud el circuito interno de estos microcontroladores, pero es exacto y claro desde

la óptica del programador. La figura 1.4.1 representa el mismo diagrama para un

microprocesador ficticio de arquitectura tradicional. Se puede observar que la principal

diferencia entre ambos radica en la ubicación del registro de trabajo, que para los PIC’s se

denomina W (Working Register), y para los tradicionales es el Acumulador (A).

En los microcontroladores tradicionales todas las operaciones se realizan sobre el

acumulador. La salida del acumulador esta conectada a una de las entradas de la Unidad

Aritmética y Lógica (ALU), y por lo tanto éste es siempre uno de los dos operandos de

cualquier instrucción. Por convención, las instrucciones de simple operando (borrar,

incrementar, decrementar, complementar), actúan sobre el acumulador. La salida de la

ALU va solamente a la entrada del acumulador, por lo tanto el resultado de cualquier

operación siempre quedara en este registro. Para operar sobre un dato de memoria, luego

realizar la operación siempre hay que mover el acumulador a la memoria con una

instrucción adicional.

En los microcontroladores PIC, la salida de la ALU va al registro W y también a la memoria

de datos, por lo tanto el resultado puede guardarse en cualquiera de los dos destinos. En

las instrucciones de doble operando, uno de los dos datos siempre debe estar en el

registro W, como ocurría en el modelo tradicional con el acumulador. En las instrucciones

de simple operando el dato en este caso se toma de la memoria (también por

convención). La gran ventaja de esta arquitectura es que permite un gran ahorro de

instrucciones ya que el resultado de cualquier instrucción que opere con la memoria, ya

sea de simple o doble operando, puede dejarse en la misma posición de memoria o en el

registro W, según se seleccione con un bit de la misma instrucción. Las operaciones con

constantes provenientes de la memoria de programa (literales) se realizan solo sobre el

registro W.

En la memoria de datos de los PIC’s se encuentran ubicados casi todos los registros de

control del microprocesador y sus periféricos autocontenidos, y también las posiciones de

memoria de usos generales. En el caso de los 16C5X, algunos registros especiales de solo

escritura (TRIS y OPTION) no están accesibles dentro del bloque de memoria de datos,

sino que solo se pueden cargar desde el registro W por medio de instrucciones especiales.

Contador de Programa

Este registro, normalmente denominado PC, es totalmente equivalente al de

...

Descargar como (para miembros actualizados) txt (94 Kb)
Leer 54 páginas más »
Disponible sólo en Clubensayos.com