You are on page 1of 7

Diferencia entre un Microprocesador y un Microcontrolador

Muchas veces nos a cado la duda de cul es la diferencia entre un microprocesador y un


microcontrolador cual es la diferencia entre estos y cual ser el mas idneo para ocupar en algn
proyecto. Bueno si se ha tenido la oportunidad de realizar un diseo con un Microprocesador, se
puede observar que dependiendo del circuito se requeran algunos circuitos integrados adicionales
adems del Microprocesador como por ejemplo:

RAM (para almacenar datos temporalmente y memorias)


ROM (para guardar el programa encargado del proceso del equipo)
Circuito integrado (para los puertos de entrada y salida)
Descodificador de direcciones.

Figura 1.- Estructura de un sistema abierto basado en un Microprocesador. La disponibilidad de los


buses permite que se configure a la medida de la aplicacin.

En cambio un Microcontrolador es un
sistema cerrado, es en definitiva un circuito integrado que incluye todos los componentes de un
computador. Debido a su reducido tamao es posible montar el controlador en el propio dispositivo
al que gobierna. En ste caso el controlador recibe el nombre de controlador empotrado.
En donde todas las partes del procesador estn contenidas en su interior y slo salen al exterior
las lneas que gobiernan los perifricos.
En conclusin las estas ventajas son reconocidas inmediatamente para aquellas personas que han
trabajado con los Microprocesadores y despus pasaron a trabajar con los Microcontroladores.
Estas
son
las
diferencias
ms
importantes:
Por ejemplo la configuracin mnima bsica de un Microprocesador estaba constituida por un Micro

de 40 Pines, Una memoria RAM de 28 Pines, una memoria ROM de 28 Pines y un decodificador
de direcciones de 18 pines; pero un Microcontrolador incluye todo estos elementos en un solo
Circuito Integrado por lo que implica una gran ventaja en varios factores: En el circuito impreso por
su amplia simplificacin de componentes, el costo para un sistema basado en Microcontrolador es
mucho menor y, lo mejor de todo, el tiempo de desarrollo de su proyecto electrnico se disminuye
considerablemente.

Intel 8088
El microprocesador Intel 8088 era una variante del Intel 8086. Introducido el 1 de julio de 1979, el
8088 tena un bus de 8 bits de datos externo en lugar del bus de 16 bits del 8086 - Los registros de
16 bits y el rango de direcciones megabyte se mantuvieron sin cambios, sin embargo. La IBM PC
original se bas en el 8088.
Historia y descripcin
El 8088 estaba destinada a los sistemas econmicos al permitir el uso de una ruta de datos de 8
bits y de 8 bits and chips perifricos, tarjetas de circuitos complejos eran todava bastante
engorroso y costoso cuando fue lanzado. La cola de captacin previa del 8088 se acort a cuatro
bytes, a partir de los seis octetos de 8086, y el algoritmo de captacin previa se modific
ligeramente para adaptarse al bus ms estrecho. Estas modificaciones del diseo bsico de 8086
fue uno de los primeros puestos de trabajo asignados a continuacin, nueva oficina de diseo de
Intel y de laboratorio de Haifa, Israel.
Las variantes de la 8088 con ms de 5 MHz de frecuencia de reloj mxima incluyen el 8088-2, que
fue fabricado usando nuevo proceso nMOS mejorada de Intel llamado HMOS y especificado para
una frecuencia mxima de 8 MHz. Ms tarde seguido el 80C88, un diseo CHMOS totalmente
esttica, que podra funcionar con velocidades de reloj de 0 a 8 MHz. Haba tambin varios otros,
ms o menos similares, las variantes de otros fabricantes. Por ejemplo, el NEC V20 era una
variante compatible y un poco ms rpido pin del 8088, diseado y fabricado por NEC. Sucesivas
8.088 procesadores compatibles NEC corran a velocidades de hasta 16 MHz.
Cuando se anunci, el precio de lista del 8088 fue EE.UU. 124,80 dlares.
Rendimiento
Dependiendo de la frecuencia de reloj, el nmero de estados de espera de memoria, as como
sobre las caractersticas del programa de aplicacin en particular, el rendimiento promedio para el
Intel 8088 vari de aproximadamente 0,33 hasta 1000000 de instrucciones por segundo. Mientras
tanto, el mov reg, reg y ALU reg, reg instrucciones de tomar dos o tres ciclos produjo
respectivamente un rendimiento mximo absoluto de entre 1/3 y 1/2 MIPS por MHz, es decir, en el
rango de 3 a 5 MIPS lugar a las 10 MHz.
Seleccin para su uso en la PC de IBM
La PC original de IBM era el microordenador ms influyente de utilizar el 8088 - Se utiliza una
frecuencia de reloj de 4,77 MHz. Algunos de los ingenieros de IBM y otros empleados queran
utilizar el procesador 801 de IBM, algunos habran preferido que el nuevo Motorola 68000,
mientras que otros abogaron por una pequea y simple microprocesador, como el MOS
Technology 6502 o el Zilog Z80, que se haba utilizado en anteriores ordenadores personales. Sin
embargo, IBM ya tena una historia de uso de chips de Intel en sus productos y tambin haba
adquirido los derechos para fabricar la familia 8086. Otro factor fue que el 8088 permiti que el
equipo se basa en un diseo de 8085 modificado, ya que podra interactuar fcilmente con la
mayora de los chips de nMOS con databuses 8 bits, es decir, existentes y maduras, y por lo tanto
econmica, componentes. Esto incluye circuitos integrados destinados originalmente para el apoyo

y perifricas alrededor de los procesadores 8085 y otros similares que ya eran bien conocidos por
muchos ingenieros, reduciendo an ms los costos.
Los descendientes de los 8088 son la 80188, 80186, 80286, 80386, y ms tarde los procesadores
compatibles de software que estn en uso hoy en da. Vase ms abajo para una lista ms
completa.
Perifricos

Intel 8282/8283: Cierre 8-Bit

Intel 8284: generador de reloj

Intel 8286/8287: Conductor 8-Bit bidireccional

Intel 8288: Controlador de bus

Intel 8289: rbitro de bus


o

Mquina de vapor de Watt, Condensador separado, La asociacin de Matthew


Boulton y James Watt, Mejoras posteriores, Motores vatios Conservas

Propulsin de naves espaciales, Requerimientos, Eficacia, Mtodos, Propulsin


Planetario y atmosfrica, Mtodos hipotticos, Tabla de mtodos, Pruebas

Vilfredo Pareto, Biografa, Sociologa, Fascismo y distribucin de energa,


Conceptos econmicos, Principales obras

PDP-11, Historia, Las caractersticas innovadoras, LSI-11, Disminucin, Modelos,


Los sistemas operativos, Perifricos, Utilizar

Interstellar Boundary Explorer, Carga til, Parmetros de la misin, Lanzar, La


recoleccin de datos, Resultados astronmicos

Textiles andinos, Orgenes, Armadura acolchada, Telar, Galera

DVD, Etimologa, Historia, Especificaciones, Identificacin, Diseo, Capacidad,


DVD grabables y regrabables, De grabacin de doble capa, DVD-Video, DVDAudio, Sucesores, Utilizar como medio de respaldo

Zij, Lista de zijes

Tarjeta inteligente, Historia, Diseo, Aplicaciones, Seguridad, Beneficios,


Problemas

Teora marxista de clase, Orgenes de la teora de Marx, Estructura de clases, La


naturaleza de las relaciones de clase: Conflicto, Inevitabilidad de la revolucin
socialista

Blanco Watson, Vida 1760-1800, Vida 1800-1835, Obras sobrevivientes,


Publicaciones

Ley de Proteccin de los Refugiados y de Inmigracin, Constitucionalidad

Giles de Roma, Primeros aos, Controversia, Obras, La escuela Egidiana,


Traducciones

Atracciones tursticas, Atraccin de la novedad, Destino turstico

Electrn neutrino, Propuesta, Descubrimiento, Nombre

DMA
El acceso directo a memoria (DMA, del ingls direct memory access) permite a cierto tipo de
componentes de una computadora acceder a la memoria del sistema para leer o escribir
independientemente de la unidad central de procesamiento (CPU) principal. Muchos
sistemas hardware utilizan DMA, incluyendo controladores de unidades de disco,tarjetas
grficas y tarjetas de sonido. DMA es una caracterstica esencial en todos los ordenadores
modernos, ya que permite a dispositivos de diferentes velocidades comunicarse sin someter a la
CPU a una carga masiva de interrupciones.
Una transferencia DMA consiste principalmente en copiar un bloque de memoria de un dispositivo
a otro. En lugar de que la CPU inicie la transferencia, la transferencia se lleva a cabo por el
controlador DMA. Un ejemplo tpico es mover un bloque de memoria desde una memoria externa a
una interna ms rpida. Tal operacin no ocupa al procesador y, por ende, ste puede efectuar
otras tareas. Las transferencias DMA son esenciales para aumentar el rendimiento
de aplicaciones que requieran muchos recursos.
Cabe destacar que aunque no se necesite a la CPU para la transaccin de datos, s se necesita el
bus del sistema (tanto bus de datos como bus de direcciones), por lo que existen diferentes
estrategias para regular su uso, permitiendo as que no quede totalmente acaparado por el
controlador DMA.
El acceso directo a memoria es simplemente eso, un acceso a memoria que se crea al particionar
la memoria en bloques del mismo tamao.

Watchdog timer (WDT)


El propsito del watchdog timer (WDT) es producir un reset del microcontrolador PIC cada cierto
perodo de tiempo con lo cual se reinicia la ejecucin del programa, con la finalidad de evitar que el
dispositivo entre en un lazo infinito (se cuelgue) o se quede en una espera muy prolongada por
un determinado evento que no ocurre. Durante la operacin normal, el watchdog timer (conocido
en espaol como perro guardin) genera un reset del microcontrolador PIC despus del final de su
perodo (perodo WDT). El reset puede evitarse si se reinicia el watch dog timer por medio de la
ejecucin de la instruccin CLRWDT antes del final de su perodo. Si el dispositivo est en modo

Sleep, el watch dog timer ocasiona que se despierte el microcontrolador PIC y contine con la
operacin normal (sin producir reset), esto se conoce como despertar WDT. El usuario tiene la
posibilidad de emplear un prescaler para el watchdog timer (prescaler de 16 bits) y para el Timer0
(prescaler de 8 bits) al mismo tiempo.
El perodo WDT puede extenderse hasta 268 segundos, usando el prescaler de 16 bits y el
postscaler (prescaler de 8 bits) simultneamente, cuando el bit PSA del registro OPTION_REG es
igual a 1 (prescaler de 8 bits asignado al watch dog timer).

Un postscaler es un circuito que reduce la frecuencia de generacin de interrupciones (o


reset por WDT) de un temporizador / contador.

Oscilador watch dog timer del microcontrolador PIC


El watch dog timer obtiene su base de tiempo del oscilador INTRC de 31.25 kHz. El valor del
registro WDTCON es ---0 1000 (prescaler de 16 bits, 1:512) en todos los resets. Esto da una base
nominal de 16,38ms, que es compatible con la base de tiempo generada en versiones anteriores
del microcontrolador PIC 16.
Cuando el OST es invocado, el WDT se mantiene en reset, debido a que el contador del WDT es
empleado por el OST para realizar el conteo. Cuando finaliza el conteo OST, el WDT empezar a
contar (si est habilitado).
Se ha aadido un nuevo prescaler para el perro guardin (figura 6.2). Este prescaler es de 16 bits y
puede ser programado con los bits WDTPS<3:0> del registro WDTCON (figura 6.3), para dividir el
oscilador RC para 32 hasta 65536, dndole a la base de tiempo del WDT un rango nominal de
1ms hasta 2,097s .

Figura 6.2 Diagrama de bloques del WDT (Postscaler es el prescaler de 8 bits del Timer0)

Figura 6.3 Bits del registro WDTCON


Control del watchdog timer
Cuando el bit WDTEN de la palabra CONFIG1 es igual a 1 (WDT habilitado), el WDT funciona
continuamente y el bit SWDTEN del registro WDTCON no tiene ningn efecto. Si se borra el bit
WDTEN (WDT deshabilitado), entonces el bit SWDTEN puede ser empleado para encender y
apagar el WDT en el instante deseado de forma muy precisa.
PIC16F88 en C (mikroC PRO) - Ejemplo
Estos ejemplos corresponden al microcontrolador PIC16F88 en mikroC PRO. El cdigo fuente para
los microcontroladores PIC16F628A y 16F877A se encuentra en las carpetas correspondientes
que
acompaan
a
este
libro.
(16F88) Este primer ejemplo muestra cmo programar el WDT para que produzca un reset cada
cierto tiempo. Debe notarse que el prescaler de 16 bits permanece en su valor inicial (1:512), por lo
que la base de tiempo es de 16,38 ms, mientras que el prescaler de 8 bits (postscaler) se programa
con un valor de 1:32, lo que da un perodo WDT = 16,38 x32 = 524,16 ms (aproximadamente 0,5
s). Otra caracterstica importante de este ejemplo es cmo se puede aadir cdigo ensamblador
por medio de la declaracin asm. El perro guardin permanece deshabilitado en la palabra
CONFIG1 (WDTEN=0). Revisar por medio del comando Project>Edit Project y seleccionar
Watchdog Timer: Off. As el encendido/apagado del WDT se realiza de forma precisa por medio del
bit
SWDTEN
del
registro
WDTCON.
(16F628A y 16F877A) El prescaler est asignado inicialmente al WDT y se lo ha programado con
un valor de 1:32 lo que da un perodo WDT=18x32=576 ms (aproximadamente 0,5 s). El WDT se
debe encender por medio del bit WDTE de la palabra de configuracin CONFIG.
Ejemplo-WDT1.c: El microcontrolador PIC se pone en modo de bajo consumo. El despertar se
producir cada vez que el WDT concluya su perodo, en ese momento se producir un incremento
de un contador que se visualizar en la pantalla y nuevamente volver al modo de bajo consumo.
El proceso debe repetirse cada medio segundo aproximadamente (circuito de la figura 3.2).
//WDT1.c
//OPTION_REG tiene todos sus bits en 1 despus de cualquier

//reset y no cambia al despertar por WDT o interrupcin, por lo tanto


//el Timer0 acta como contador, incrementa en transicin
//descendente y el prescaler est asignado al WDT.
//Declaracin de las 12 variables necesarias para la conexin
//del mdulo LCD.
sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D4 at RB0_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D7 at RB3_bit;
sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D4_Direction at TRISB0_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D7_Direction at TRISB3_bit;
// Fin de declaracin de variables de conexin.
char texto[4], contador=0;
void main(){
OSCCON=0x40; //Oscilador interno a 1MHz.
while (OSCCON.IOFS==0);//Esperar mientras el oscilador est inestable.
ANSEL=0x00; //Bits AN6:AN0 como E/S digital.
Lcd_Init();
//Inicializa el LCD.
Lcd_Cmd(_LCD_CLEAR);
//Borra el display.
Lcd_Cmd(_LCD_CURSOR_OFF); //Apaga el cursor.
WDTCON=0x08;
//Prescaler 1:512 (Base de tiempo 16,38 ms).
OPTION_REG=0xFD;
//Postscaler 1:32 (Perodo WDT = 524,16 ms).
SWDTEN_bit=1;
//WDT encendido.
while (1)
{
ByteToStr(contador,texto);
Lcd_Out(1,6,texto);
asm SLEEP
//Modo de bajo consumo durante 524.16 ms.
contador++;
}
}
Temas relacionados que tambin encontrars en este libro:

Reset
Reset maestro #MCLR
Reset al encendido (Power-on Reset POR)
Temporizador de encendido (Power-up Timer PWRT)
Temporizador de encendido del oscilador (Oscilator Start-up Timer OST)
Reset por desvanecimiento (Brown-out Reset BOR)
Secuencia general de encendido
Modo de bajo consumo (Sleep)
Despertar (Wake-up from Sleep)
Otros ejemplos de programacin

You might also like