Está en la página 1de 35

MICROCONTROLADORES:

Realizado por: Ing Ender Pereira (Msc)


MICROCONTROLADORES

Memoria volátil RAM


para almacenar datos

Circuitería interna I/O


para disponer de
Puertos de entrada y
salida
MICROCONTROLADORES

Microcontroladores PIC de Microchip

PIC = Controlador de interfaz periférico

• Los PIC se divide en familias de microcontroladores.


– Gama enana : PIC12C(F)XXX de 8 pines.
– Gama baja o básica: PIC16C5X.
– La Gama media lo componen las familias 16C6X/ 7X/ 8X,
algunos con conversores A/D, comparadores, interrupciones,
etc.
– La Gama Alta: PIC17CXXX.
– La Gama mejorada la componen los PIC18CXXX
– La Gama PICAXE
– dsPIC
CARACTERISTICAS DE LOS MICROCONTROLADORES
PIC16F877A
• Procesador de arquitectura RISC avanzada con un SET de 35 instrucciones de 14
bits de longitud.

• Memoria de Programa tipo Flash: De 8K x 14 bits.

• Memoria RAM: 368 Bytes.

• Memoria de Datos EEPROM : 256 Bytes.

• Voltaje de alimentación comprendido entre 2 y 5,5 V. Frecuencia hasta 20 Mhz

• 15 Tipos de Interrupción, Comunicación serie, 3 Timers, Convertidor A/D de 10 bits

• 40 pines y 5 Puertos de E/S (A,B,C,D,E)


ARQUITECTURA EXTERNA

33 Pines I/O
PUERTO A= RA0, RA1, RA2, RA3,
RA4, RA5

PUERTO B = RB0, RB1, RB2, RB3,


RB4, RB5, RB6, RB7

PUERTO C = RC0, RC1, RC2, RC3,


RC4, RC5, RC6, RC7
VDD: Alimentación y VSS: Tierra
PUERTO D = RD0, RD1, RD2, RD3,
OSC1/CLKIN-OSC2/CLKOUT: conexión del oscilador RD4, RD5, RD6, RD7

MCLR#/VPP: Reset y tensión de programación PUERTO E = RE0, RE1, RE2


ARQUITECTURA EXTERNA
MCLR: El Reset del Microcontrolador (Master Clear). Se activa
cuando tiene un "0" lógico en su entrada.
ARQUITECTURA EXTERNA

• Como este dispositivo es de tecnología CMOS,


todos los pines deben estar conectado a alguna
parte, nunca dejarlos al aire por que se puede
dañar el integrado. Los pines que no se estén
usando se deben conectar a la fuente de
alimentación +5V con una resistencia.

Capacidad de corriente de los pines I/O


La máxima capacidad de corriente de
cada uno de los pines de I/O en modo
sumidero es de 25 mA y en modo fuente
es de 20 mA.
Memoria de Programa
Se encarga de almacenar todas las instrucciones del Programa
de Control
VECTOR DE RESET
Cuando ocurre un Reset o se enciende el Microcontrolador, el
contador de programa se pone en cero (0000h). Por esta razón,
en la primera dirección del programa se debe escribir todo lo
relacionado con la iniciación del mismo. (por ejemplo, la
configuración de los puertos...) .
VECTOR DE INTERRUPCION
Cuando el Microcontrolador recibe una señal de interrupción el
contador de programa apunta a la dirección 04h de la memoria
de programa, por eso allí se debe escribir toda la programación
necesaria para atender dicha interrupción.
PILA
Posee 8 niveles, de estructura LIFO, donde se almacenan las
direcciones de retorno para las subrutinas o para
interrupciones. (Máximo 8 direcciones de retorno).
Memoria de Datos
• Es de tipo RAM ya que los datos
que manejan los programas varían
continuamente.

• La memoria está dividida en 4


bancos (cada una de las
columnas): banco 0,1,2 y 3.

• Las primeras posiciones de cada


banco están ocupadas por los
Registros de Propósito Especial
(SFR). Estos registros, son los
encargados de controlar ciertas
funciones específicas del PIC.

• Las posiciones siguientes son los


denominados Registros de
Propósito General, (GPR). Éstos
son empleados para guardar
cualquier dato que necesitemos
durante la ejecución del programa.
El Puerto A
Registro PORTA (05H).- El puerto A posee 6 líneas bidireccionales. Cada uno de los 6
bits menos significativos (RA5,...,RA0) de este registro están asociados a la línea física
correspondiente del puerto.

Registro TRISA (85H).- Cada bit de este registro configura cada un de los pines del
Puerto A como entrada o salida.
El Puerto B
Los Puertos C, D y E
Estructura
del
programa
Tipos de
datos

Nota: Los tipos de datos son por defecto


Unsigned. Para tener tipos de datos
Signed, para int, long, long long; se coloca
por ejemplo: signed int
Tipos de Datos Ejemplos
int Int X;
Int XY, WZ;
Int H=5;
Signed int Z;
Formato de Datos: short Short x;
Short x,y;
23------------------------Decimal
Short x=1;
0x23---------------------Hexadecimal
char Char Z;
023----------------------Octal
0b10110010----------Binario Char ZX=10;
‘$’------------------------ASCII long Long FT;
Signed long GH, XY;
Signed long YZ=-30000;
long long long long WX, TF;
signed long long TR;
long long YF=750000;
float float LT;
float PT=5,65;
OPERADORES Y EXPRESIONES
OPERADORES Y EXPRESIONES
OPERADORES Y EXPRESIONES

OJO !=
OPERADORES Y EXPRESIONES
OPERADORES Y EXPRESIONES

OJO --
Directivas
FUNCIONES DE RETARDOS
FUNCIONES DE I/O DISCRETA
FUNCIONES DE I/O DISCRETA
Sentencia IF
Sentencia While y Goto
FUNCIONES PARA LA MANIPULACIÓN DE BITS
FUNCIONES PARA LA MANIPULACIÓN DE BITS

Nota: En las 3 funciones para manipulación de bit en la parte de digito solo


puede ir un numero.

Esto si ya que esta en la parte de


variable Esto no es permitido

También podría gustarte