PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL...

12
INTRODUCCIÓN A LA PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR 1

Transcript of PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL...

Page 1: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

INTRODUCCIÓN A LA PROGRAMACIÓN EN

LENGUAJE ENSAMBLADOR

1

Page 2: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

2

DIAGRAMA A BLOQUES DEL PIC16F628A

Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques para darnos una idea general de los elementos que contiene y decidir si es el dispositivo adecuado para nuestra aplicación.

Page 3: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

3

PATILLAJE DEL PIC16F628A

Page 4: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

El PIC16F628A se caracteriza porque:

• Su procesador es segmentado, "pipe-line".

• Su procesador es tipo RISC

• Tiene una arquitectura HARVARD

• El formato de las instrucciones es ortogonal

• Todas las instrucciones tienen la misma longitud (14 bits)

• La arquitectura está basada en bancos de registros

4

El PIC16F628A

Page 5: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

5

Procesador segmentado "pipe-line":

• Q1 - incremento de PC

• Q2 - lectura de memoria

• Q3 - realización de la operación

• Q4 - escritura en memoria

Page 6: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

6

ARQUITECTURA HARVARD

La memoria de programa y la memoria de trabajo están separadas para optimizar el funcionamiento del microcontrolador.

Page 7: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

7

ORGANIZACIÓN DE LA MEMORIA DE PROGRAMA

En el PIC16F628A las instrucciones deben escribirse a partir de la localidad 000h de la memoria de programa. En el código lo indicamos mediante la directiva ORG 0x00.

Page 8: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

8

INSTRUCCIONES ORTOGONALES

Cualquier instrucción puede utilizar cualquier elemento de la arquitectura como fuente o destino.

Efectúa sus operaciones con dos operandos, uno que proviene del registro W (Work), y el otro que se encuentra en cualquier otro registro o del propio código de instrucción. El resultado puede ir a cualquier registro o al registro W

Page 9: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

9

ARQUITECTURA BASADA EN BANCOS DE REGISTROS (RAM) En el PIC16F628A en bancos de registros que está activo se elige mediante una combinación de los bits RP0 y RP1 del registro STATUS.

Page 10: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

10

SFR –SPECIAL FUNCTION REGISTER (REGISTROS DE FUNCION ESPECIALEn el PIC16F628A la memoria RAM tiene unos registros con funciones definidas por el fabricante conocidos como SFR.

Cada registro y cada bit de estos registros tienen un nombre que podemos encontrar en la hoja de especificaciones.

Page 11: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

11

GPR –GENERAL PORPOSE REGISTER (REGISTROS DE PROPOSITO GENERAL)

En el PIC16F628A la memoria RAM tiene unos registros que pueden ser utilizados por el programadadorpara definir variables personalizadas.

Estos registros son conocidos como GPR.

Page 12: PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR · LENGUAJE ENSAMBLADOR 1. 2 DIAGRAMA A BLOQUES DEL PIC16F628A Al trabajar con un microcontrolador debemos tener a la mano el diagrama a bloques

12

PUERTOS

El PIC16F628A se comunica con el exterior por medio de dos puertos: PORTA y PORTB.

Cada terminal (pin) de los puertos se puede configurar como entradas o como salidas de manera independiente, para esto se utilizan los registros TRISA y TRISB.