Vous êtes sur la page 1sur 20

ARQUITECTURA DE COMPUTADORAS

INTRODUCCION A LOS
MICROCONTROLADORES

Qu es un microcontrolador?
Un microcontrolador es un circuito integrado que contiene toda
la estructura de un microcomputador, o sea CPU, RAM, ROM y
circuitos de entrada y salida. Los resultados de tipo prctico, que
pueden lograrse a partir de estos elementos, son sorprendentes.

Arquitectura interna
Aunque inicialmente todos los microcontroladores adoptaron la arquitectura
clsica de von Neumann, en el momento presente se impone la arquitectura
Harvard.
La arquitectura de von Neumann se caracteriza por disponer de una sola
memoria principal donde se almacenan datos e instrucciones de forma
indistinta. A dicha memoria se accede a travs de un sistema de buses nico
(direcciones, datos y control) mientras que la arquitectura Harvard dispone
de dos memorias independientes, una que contiene slo instrucciones y otra
slo datos. Ambas disponen de sus respectivos sistemas de buses de acceso y
es posible realizar operaciones de acceso (lectura o escritura)
simultneamente en ambas memorias.

El procesador o CPU
Se encarga de direccionar la memoria de instrucciones, recibir el cdigo OP
de la instruccin en curso, su decodificacin y la ejecucin de la operacin
que implica la instruccin, as como la bsqueda de los operandos y el
almacenamiento del resultado.
Existen tres orientaciones en cuanto a la arquitectura y funcionalidad de los
procesadores actuales.
CISC: Un gran nmero de procesadores usados en los microcontroladores
estn basados en la filosofa CISC (Computadores de Juego de Instrucciones
Complejo).
RISC: Tanto la industria de los computadores comerciales como la de los
microcontroladores estn decantndose hacia la filosofa RISC
(Computadores de Juego de Instrucciones Reducido).
SISC: En los microcontroladores destinados a aplicaciones muy concretas,
el juego de instrucciones, adems de ser reducido, es "especfico", o sea,
las instrucciones se adaptan a las necesidades de la aplicacin prevista.
Memoria
En los microcontroladores la memoria de instrucciones y datos est integrada
en el propio circuito integrado. Una parte debe ser no voltil, tipo ROM, y se
destina a contener el programa de instrucciones que gobierna la aplicacin.
Otra parte de memoria ser tipo RAM, voltil, y se destina a guardar las
variables y los datos.

Hay dos peculiaridades que diferencian a los microcontroladores de los PC's:
No existen sistemas de almacenamiento masivo como disco duro o
disquetes.
Como el microcontrolador slo se destina a una tarea en la memoria de
programa, slo hay que almacenar un nico programa de trabajo.
La memoria de datos (RAM) en estos dispositivos es de poca capacidad pues
slo debe contener las variables y los cambios de informacin que se
produzcan en el transcurso del programa. Por otra parte, como slo existe un
programa activo, no se requiere guardar una copia del mismo en la RAM
pues se ejecuta directamente desde la memoria de programa (ROM).
Memoria
Segn el tipo de memoria de programa que dispongan los microcontroladores,
la aplicacin y utilizacin de los mismos es diferente. Se describen las cinco
versiones de memoria no voltil que se pueden encontrar en los
microcontroladores del mercado:
1. ROM con mscara
Es una memoria no voltil de slo lectura cuyo contenido se graba durante la
fabricacin del chip.
2. OTP
El microcontrolador contiene una memoria no voltil de slo lectura
"programable una sola vez" por el usuario. OTP (One Time Programmable).
3 EPROM
Los microcontroladores que disponen de memoria EPROM (Erasable
Programmable Read OnIy Memory) pueden borrarse y grabarse muchas
veces.
4 EEPROM
Se trata de memorias de slo lectura, programables y borrables
elctricamente EEPROM (Electrical Erasable Programmable Read OnIy
Memory)
Memoria
5 FLASH
Se trata de una memoria no voltil, de bajo consumo, que se puede
escribir y borrar. Funciona como una ROM y una RAM pero consume
menos y es ms pequea.
A diferencia de la ROM, la memoria FLASH es programable en el circuito.
Es ms rpida y de mayor densidad que la EEPROM.
Puertos de Entrada y Salida
La principal utilidad de las patillas que posee la cpsula que contiene un
microcontrolador es soportar las lneas de E/S que comunican al computador
interno con los perifricos exteriores y segn los controladores de perifricos
que posea cada modelo de microcontrolador, se destinan a proporcionar el
soporte a las seales de entrada, salida y control.
Reloj principal
Todos los microcontroladores disponen de un circuito oscilador que genera una
onda cuadrada de alta frecuencia, que configura los impulsos de reloj usados
en la sincronizacin de todas las operaciones del sistema. Esta seal del reloj
es el motor del sistema y la que hace que el programa y los contadores
avancen.
Programacin de los
Microcontroladores
El microcontrolador ejecuta el programa cargado en la memoria Flash. Esto se
denomina el cdigo ejecutable y est compuesto por una serie de ceros y
unos, aparentemente sin significado. Dependiendo de la arquitectura del
microcontrolador, el cdigo binario est compuesto por palabras de 12, 14 o
16 bits de anchura. Cada palabra se interpreta por la CPU como una
instruccin a ser ejecutada durante el funcionamiento del microcontrolador.
Lenguaje Ensamblador
Como el proceso de escribir un cdigo ejecutable era considerablemente
arduo, en consecuencia fue creado el primer lenguaje de programacin
denominado ensamblador (ASM). Siguiendo la sintaxis bsica del
ensamblador, era ms fcil escribir y comprender el cdigo. Las instrucciones
en ensamblador consisten en las abreviaturas con significado y a cada
instruccin corresponde una localidad de memoria. Un programa
denominado ensamblador compila (traduce) las instrucciones del lenguaje
ensamblador a cdigo mquina (cdigo binario).

Lenguaje C
El lenguaje C dispone de todas las ventajas de un lenguaje de programacin
de alto nivel y le permite realizar algunas operaciones tanto sobre los bytes
como sobre los bits (operaciones lgicas, desplazamiento etc.). Las
caractersticas de C pueden ser muy tiles al programar los
microcontroladores. Adems, C est estandarizado (el estndar ANSI), es muy
portable, as que el mismo cdigo se puede utilizar muchas veces en
diferentes proyectos. Lo que lo hace accesible para cualquiera que conozca
este lenguaje sin reparar en el propsito de uso del microcontrolador.
Caractersticas Principales del
MIKROC
Este lenguaje es muy similar al C estndar, no obstante en determinados
aspectos difiere del ANSI estndar en algunas caractersticas. Algunas de
estas diferencias se refieren a las mejoras, destinadas a facilitar la
programacin de los microcontroladores PIC, mientras que las dems son la
consecuencia de la limitacin de la arquitectura del hardware de los PIC.
Fases de Compilacin
El archivo fuente contiene el cdigo en mikroC que usted escribe para
programar el microcontrolador. El preprocesador se utiliza automticamente
por el compilador al iniciarse el proceso de la compilacin. El compilador
busca las directivas del preprocesador (que siempre empiezan por #) dentro
del cdigo y modifica el cdigo fuente de acuerdo con las directivas. En esta
fase se llevan a cabo inclusin de archivos, definicin de constantes y macros
etc, lo que facilita el proceso. Ms tarde vamos a describir estas directivas en
detalle. El analizador sintctico (parser) elimina toda la informacin intil del
cdigo (comentarios, espacios en blanco). Luego, el compilador traduce el
cdigo a un archivo binario denominado archivo .mcl. El enlazador (linker)
recupera toda la informacin requerida para ejecutar el programa de los
archivos externos y la agrupa en un solo archivo (.dbg). Adems, un proyecto
puede contener ms de un archivo fuente y el programador puede utilizar
funciones predefinidas y agrupadas dentro de los archivos denominados
libreras. Por ltimo, el generador .hex produce un archivo .hex. Es el archivo
que se va a cargar en el microcontrolador.

Estructura de Programa
Gamas de Microcontroladores
La gama baja o enana: PIC12C (F) XXX de 8 pines

Se trata de un grupo de PIC de reciente aparicin que ha acaparado la atencin del
mercado. Su principal caracterstica es su reducido tamao, al disponer todos sus
componentes de 8 pines. Se alimentan con un voltaje de corriente continua
comprendido entre 2,5 V y 5,5 V, y consumen menos de 2 mA cuando trabajan a 5 V y 4
MHz. El formato de sus instrucciones puede ser de 12 o de 14 bits y su repertorio es de
33 o 35 instrucciones, respectivamente. En la Figura se muestra el diagrama de
conexionado de uno de estos PIC.
Gamas de Microcontroladores
Gama baja o bsica: PIC16C5X con instrucciones de 12 bits.
Se trata de una serie de PIC de recursos limitados, pero con una de la mejores
relaciones costo/prestaciones. Sus versiones estn encapsuladas con 18 y 28 patitas y
pueden alimentarse a partir de una tensin de 2,5 V, lo que les hace ideales en las
aplicaciones que funcionan con pilas teniendo en cuenta su bajo consumo (menos de
2 mA a 5 V y 4 MHz).
Gamas de Microcontroladores
Gama media. PIC16CXXX con instrucciones de 14 bits
Es la gama ms variada y completa de los PIC. Abarca modelos con encapsulado desde
18 patitas hasta 68, cubriendo varias opciones que integran abundantes perifricos.
Dentro de esta gama se halla el fabuloso PIC16X84 y sus variantes. En la Figura, se
muestra el diagrama de conexionado de uno de estos PIC.
Gamas de Microcontroladores
Gama alta: PIC17C4X con instrucciones de 16 bits.
Se alcanzan las 58 instrucciones de 16 bits en el repertorio y sus modelos disponen de
un sistema de gestin de interrupciones vectorizadas muy potente. Tambin incluyen
variados controladores de perifricos, puertas de comunicacin serie y paralelo con
elementos externos, un multiplicador hardware de gran velocidad y mayores
capacidades de memoria, que alcanza los 8 k palabras en la memoria de instrucciones
y 454 bytes en la memoria de datos.
Gama Alta: PIC18 con instrucciones de 16 bits

Los PIC de la serie 18 constituyen una numerosa familia, que su gran mayora tiene
una memoria de programa tipo FLASH, un repertorio de 77 instrucciones de 16 bits
con una memoria de programa de 2mb con palabras de 16 bits y registros de 8 bits.
Varios dispositivos PIC18 estn diseados para trabajar con tensiones bajas de 2 a 3.6
mb y corrientes inferiores.
Instrumental de Trabajo
Ensamblador. La programacin en lenguaje ensamblador puede resultar un tanto
ardua para el principiante, pero permite desarrollar programas muy eficientes, ya que
otorga al programador el dominio absoluto del sistema.
Compilador. La programacin en un lenguaje de alto nivel (como C o Basic) permite
disminuir el tiempo de desarrollo de un producto y si adems est familiarizado con C
o Basic es una buena opcin.
Simulador. Se trata de software que es capaz de ejecutar en un PC programas
realizados para el microcontrolador.
Placas de evaluacin. Se trata de pequeos sistemas con un microcontrolador ya
montado y que suelen conectarse a un PC desde el que se cargan los programas que se
ejecutan en el microcontrolador.
Emuladores en circuito. Se trata de un instrumento que se coloca entre el PC anfitrin
y el zcalo de la tarjeta de circuito impreso donde se alojar el microcontrolador
definitivo.
Programador. Es un dispositivo que conectado a un PC permite grabar en el
microcontrolador el programa desarrollado. Algunos puede fabricarlos uno mismo (ver
Programador PIC y EEPROM JDM y Programador JDMD) y resultan muy econmicos.

Vous aimerez peut-être aussi