Sie sind auf Seite 1von 7

11/06/2012

MEMORIA DE PROGRAMA, MEMORIA DE DATOS RAM, y MEMORIA EEPROM

MEMORIA DE PROGRAMA
Contiene el programa con las instrucciones que gobiernan la aplicacin. Es un tipo de memoria NO VOLTIL denominada ROM FLASH, es decir, el programa NO SE BORRA an cuando desaparezca la alimentacin. La informacin(programa) se debe grabar previamente mediante un Quemador de PICs conectado a un PC.

MEMORIA DE DATOS
Almacena los datos que se manejan mientras se ejecuta un programa, por lo tanto, debe ser de lectura y escritura. Es un tipo de memoria voltil (RAM), es decir, los datos almacenados se borran cuando desaparece la alimentacin. Se divide en 2 partes: Registros de funciones especiales SFR, y Registros de propsito general GPR.

11/06/2012

Registros de Configuracin
Durante el proceso de grabacin, se escribe una palabra de configuracin (Configuration word) que posteriormente no se puede modificar durante la ejecucin de un programa. Esta configuracin se define en el inicio del nuevo proyecto:

Se refiere al intercambio de datos

entre la CPU y la memoria.

CPU Unidad central de proceso. Permite usar la informacin de la memoria de programa (instrucciones) para controlar la operacin del dispositivo. En vista que muchas de esas instrucciones operan en la memoria de datos, entonces se requiere de la ALU.

ALU Arithmetic and Logic Unit. Es el componente ms complejo de los Microcontroladores debido a que contiene todos los circuitos para desarrollar funciones de clculos y manipulacin de los datos durante la ejecucin de un programa. La ALU ms comn trabaja con valores de 8 bits.

Tipos de Arquitectura
VON NEUMANN
La CPU est conectada mediante un nico Bus a la memoria que contiene las instrucciones del programa y los datos.

HARVARD
Dispone de dos memorias independientes, las cuales se conectan mediante buses exclusivos al CPU.

Tipos de Procesadores
CISC
Complex Instruction Set computer. Poseen un grupo de instrucciones ms amplio, hacindolo muy sofisticado, sin embargo, el inconveniente es que requiere de muchos ciclos de reloj para ejecutar dichas instrucciones.

RISC
Reduced Instruction Set computer. Disponen de un grupo de instrucciones ms limitado, lo cual facilita su aprendizaje. Otra ventaja es que casi todas las instrucciones se ejecutan en un solo ciclo de mquina. Poseen una estructura segmentada o Pipeline.*

CICLOS DE MQUINA Y CICLOS DE RELOJ

11/06/2012

OSCILADOR
Cada instruccin de programa se ejecuta en determinado tiempo. Las instrucciones no se ejecutan a la velocidad impuesta por el oscilador sino varias veces ms despacio. Eso es debido a que cada instruccin se ejecuta en varios ciclos del reloj .

Ciclo de mquina ( CM )
Se define como el tiempo mnimo necesario para ejecutar una instruccin y est formado por un nmero determinado de ciclos o periodos de reloj.

Ejemplo:
Si se utiliza un cristal de cuarzo con una frecuencia de 4 MHZ, el tiempo de ejecucin de una instruccin de programa no ser 250 nS, sino 1S . Adems, no todas las instrucciones les toma 1 ciclo de mquina, ya que existen instrucciones complejas que les toma ms que eso.

Configuracin del Oscilador


El Registro OSCCON permite configurar la velocidad del oscilador interno**. OSCCON=0x00; 31kHz OSCCON=0x10; 125kHz OSCCON=0x20; 250kHz OSCCON=0x30; 500kHz OSCCON=0x40; 1MHz (Uso comn) OSCCON=0x50; 2MHz OSCCON=0x60; 4MHz OSCCON=0x70; 8MHz

Puertos Digitales
PUERTO A PUERTO B

Tecnologas, Configuracin.

11/06/2012

Entrada/ salida PORTA PORTB

Configuracin TRISA TRISB

Configuracin como Entrada o salida


SALIDA DE DATOS : ENTRADA DE DATOS: 0 1

** TRISA y TRISB son registros de configuracin de los puertos.

Nota: La asignacin es individual correspondiente a cada terminal del puerto. NO necesariamente los puertos A y B sern entradas y salidas respectivamente.

Ejemplo 2:
Configurar (de forma binaria, hexadecimal y decimal) el puerto B con las siguientes asignaciones:

Solucin:
TRISB = 0b10100110 TRISB = 0xA6 TRISB = 166

RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7

salida entrada entrada salida salida entrada salida entrada

Identificadores v.s Palabras Claves


PALABRAS CLAVES.-Son palabras que tienen un significado fijo dentro de un programa. Entre ellas: if, while, for, case, switch, do, double, else, break, bit, char, continue, default, goto, long, unsigned, void, short, signed, return, int, float, etc.

11/06/2012

Identificadores v.s Palabras Claves


IDENTIFICADORES.-Son nombres arbitrarios que permiten identificar objetos bsicos dentro del programa. Los identificadores que el programa considerar como vlidos deben cumplir ciertas reglas:
El primer caracter debe ser una letra o un sub-guin. No se deben utilizar caracteres especiales (&, . , + , etc) No deben coincidir con las palabras claves (while, else, if, etc).

OPERADORES ARITMTICOS
Operador + Descripcin Suma Resta Multiplicacin Divisin Ejemplo_______ resultado = var1 + var2 resultado = var1 - var2 resultado = var1 * var2 resultado = var1 / var2

OPERADORES RELACIONALES
Operador < > <= >= == != Descripcin___ Menor que Mayor que Menor o igual que Mayor o igual que igual a distinto de

* /

OPERADORES LGICOS
Operador ! && || Descripcin___ NO lgico (NOT) Y lgico (AND) O lgico (OR)

OPERADORES DE INCREMENTO Y DECREMENTO


Operador ++ -Descripcin___ incremento decremento

OPERADORES DE DESPLAZAMIENTO DE BITS


Operador >> << Descripcin___ desplazamiento a la derecha desplazamiento a la izquierda

11/06/2012

1.- Instruccin de asignacin (=)


Permite asignar a una variable un valor constante, el contenido de otra variable o el resultado de una expresin matemtica. La asignacin va de derecha a izquierda. Ejemplo: suma=2 y=(a-b)/c el valor 2 se almacena en la variable suma. el resultado de la expr. matemtica se almacena en la variable y

2.- Instruccin de entrada de datos


variable=PORT x Permite el ingreso de uno o ms datos a travs de los pines del C y almacenarlos en una o ms variables. Ejemplo: variable=PORTA variable=RB2_bit Los bits del Puerto A se almacenan en variable. Se lee el estado del pin RB2 y se lo almacena en variable.

3.- Instruccin de salida de datos


PORT x = dato Permite el envo de datos, el contenido de una variable o el resultado de una expresin matemtica hacia los pines de un puerto. Ejemplo: PORTA = 0x00 RB2_bit = 1 Todos los pines del Puerto A se ponen en cero. El estado del pin RB2 se pone en alto (1)

Observaciones finales:
Los nmeros hexadecimales se escriben comenzando siempre con 0x. Ejemplo: 0x0F, 0xA4 Los nmeros binarios se escriben comenzando siempre con 0b. Ejemplo: 0b01001, 0b10101110 Los nmeros decimales se escriben normalmente. Los comentarios se inician con doble barra diagonal. El punto y coma (;) indica el final de una instruccin. No confundir el operador de asignacin (=) con el operador de comparacin (==) Los signos de agrupacin siempre deben estar emparejados. Lo mismo ocurre con los parntesis. Las llaves no son necesarias en aquellos casos en los que nicamente se va a ejecutar una instruccin.

This document was created with Win2PDF available at http://www.win2pdf.com. The unregistered version of Win2PDF is for evaluation or non-commercial use only. This page will not be added after purchasing Win2PDF.

Das könnte Ihnen auch gefallen