En un microcontrolador normalmente, solamente un programa en particular está trabajando para el
control de una aplicación. Por ejemplo, la CPU MC68HC05 sólo reconoce 60 instrucciones diferentes, pero
éstas son representativas del juego de instrucciones de cualquier sistema con microprocesador. Este tipo de
sistema con microprocesador es un buen modelo para aprender el fundamento de funcionamiento de un
microprocesador, porque es posible saber lo que está pasando exactamente en cada paso de la ejecución de un
programa en la CPU.
Reloj (Clock)
Salvo excepciones, los microprocesadores usan un pequeño oscilador del reloj (clock) para activar la
CPU, para mover de un paso a la secuencia siguiente. En el capítulo de arquitectura de un microprocesador, se
puede ver que incluso las instrucciones simples de un microcontrolador están compuestas de una serie de pasos
aún más básicos. Cada uno de estos pasos diminutos en el funcionamiento del microprocesador toma un ciclo del
reloj de la CPU.
Memoria del Microprocesador
Se usan varios tipos de memoria para los diferentes propósitos en un sistema con microprocesador. Los
tipos principales de memoria encontrados en un microcontrolador son:
Memorias para almacenar el Programa:
ROM (Read Only Memory): memoria sólo de lectura, este tipo de memoria se programa en fabrica y se
llama Máscara.
EPROM (Erasable Programmable Read Only Memory): memoria sólo de lectura, programable
eléctricamente y se borra por luz ultravioleta a través de una ventana en la parte superior del dispositivo.
OTP (One Time Programmable): memoria sólo de lectura, programable eléctricamente una sola vez.
FLASH: memoria programable y borrable eléctricamente, por bloques.
Estos tipos se usan principalmente para almacenar los programas y los datos permanentes que deben permanecer
inalterados incluso cuando no hay ninguna alimentación aplicada al microcontrolador.
Memoria para almacenar Datos:
RAM (Random Access read/write Memory): memoria de acceso a lectura o escritura aleatorio, se usa para
el almacenamiento temporal de datos y el cálculo intermedio de los resultados durante las operaciones. Este
tipo de memoria pierde los datos cuando se queda sin alimentación.
EEPROM (Electrically Erasable Programmable Read Only Memory): memoria sólo de lectura,
programable y borrable eléctricamente.
La unidad más pequeña de una memoria, es de un solo bit, que puede guardar uno valor lógico '0' o '1'.
Estos bits se agrupan en conjuntos de ocho bits para hacer uno byte. Los microprocesadores más grandes utilizan
grupos de 16 o 32 bits, llamados 'palabras' o word. El tamaño de una 'palabra' (word) puede ser diferente para
cada microprocesador, pero un byte siempre es de ocho bits.
Los ordenadores personales trabajan con programas muy grandes y con grandes cantidades de datos,
para ello usan formas especiales de dispositivos de almacenamiento, llamados almacenamiento en masa, como
los discos blandos, los discos duros, y los discos compactos. No es raro encontrar varios millones de bytes de
memoria RAM en un ordenador personal, con discos duros con varios gigabytes o discos compactos muy
similares a los usados para las grabaciones de música con una capacidad de 640 millones de bytes de memoria de
sólo lectura. En comparación, los sistemas con microcontrolador típico tienen una memoria total entre 1,000 y
64,000 bytes.
Programa de un Microprocesador
La
Figura 1
muestra el programa como una nube, porque se origina en la imaginación del ingeniero o
programador del microprocesador. Esto es comparable a un ingeniero eléctrico que piensa en un nuevo circuito o
un ingeniero mecánico que deduce un nuevo ensamblaje. Los componentes de un programa son las instrucciones
del juego de instrucciones de la CPU. Así como el diseñador del circuito puede construir un circuito sumador
con simple puertas AND, OR y NOT, un programador puede escribir un programa para sumar números con
simples instrucciones.
10