Vous êtes sur la page 1sur 16

Introducción a los

Microprocesadores y [Year]
Microcontroladores

José Luis Núñez


00-MISN-1-198

Eggy Alejandro De León


99-SISN-1-087
Introducción a los Microprocesadores y Microcontroladores

Introducción

Los microprocesadores y microcontroladores representan la maravilla del


desarrollo de la tecnología electrónica en más de medio siglo, los aparatos
que los incorporan han cambiado la forma de trabajar e investigar de la
humanidad, en la historia ninguna herramienta creada por el hombre, tenía la
capacidad de crear otras y acelerar su evolución, en la actualidad muchos
instrumentos, electrodomésticos y en general cualquier dispositivo electrónico
utiliza alguno de estos dos componentes para optimizar su funcionamiento.

Los nuevos dispositivos traen consigo nuevas tecnologías aplicadas tanto a la


electrónica del hardware como al desarrollo del software que lo controla, se
relacionan entonces varios componentes que parten del microprocesador, tal es
el caso del microcontrolador, que también es objeto de estudio de este curso.
No solo encontramos microprocesadores y microcontroladores, también existen
evoluciones de estos aplicados a situaciones particulares en la industria y
consumo, tal es el caso de los DSP (Procesadores Digitales de Señales) y PLC
(Controladores Lógicos Programables).

Las aplicaciones de control, medición, instrumentación, entretenimiento y


consumo, son las promotoras y fuente del creciente mercado tanto de
microprocesadores como de microcontroladores. El panorama es alentador por la
expectativa de nuevos productos, donde las aplicaciones están limitadas por el
ingenio y la imaginación de los programadores.

1
Introducción a los Microprocesadores y Microcontroladores

El microprocesador

El CPU

El CPU es el “cerebro” de la computadora, el lugar en donde se manipulan los


datos. En los sistemas de computación más grandes, por ejemplo, las
supercomputadoras y los mainframes, las tareas de procesamiento pueden
controlarse por múltiples chips de procesamiento. La arquitectura de un
procesador determina la cantidad de transistores que tiene y, por tanto, el
poder del procesador mientras más transistores tenga el procesador, será más
poderoso. Sin importar su diseño, todos los CPU tienen al menos dos partes
básicas: la unidad de control y la unidad aritmética lógica.

La unidad de control

Todos los recursos de la computadora están controlados por la unidad de control.


Puede considerar que ésta es un policía de tránsito dirigiendo el flujo de
datos a través del CPU, además del flujo hacia otros dispositivos y desde
ellos. La unidad de control es el centro lógico de la computadora.

Las instrucciones del CPU para llevar a cabo comandos están integradas en la
unidad de control. Las instrucciones, o conjunto de instrucciones, listan todas
las operaciones que el CPU puede realizar. Cada instrucción del conjunto de
instrucciones está expresada en microcódigo: un conjunto de instrucciones

2
Introducción a los Microprocesadores y Microcontroladores

básicas que le dicen al CPU la forma en que debe ejecutar las operaciones más
complejas.

La unidad aritmética lógica

Cuando la unidad de control encuentra una instrucción que involucra a la


aritmética o lógica, envía esa instrucción al segundo componente del CPU: la
unidad aritmética lógica, o ALU (por sus siglas en inglés). La ALU en realidad
lleva a cabo las operaciones aritméticas y lógicas que describimos
anteriormente.

La ALU incluye un grupo de registros, ubicaciones de memoria de alta velocidad


que están integradas directamente en el CPU y se utilizan para alojar los daros
que se están procesando en ese momento. Por ejemplo, puede considerar al
registro como a un bloc de notas. La ALU utilizará al registro para alojar los
datos que se están utilizando en ese momento para un cálculo. Por ejemplo, la
unidad de control puede cargar dos números de la memoria en los registros de
la ALU. Luego, puede decirle a la ALU que divida los dos números (una operación
aritmética) o compruebe que los números son iguales (una operación lógica). La
respuesta a este cálculo se almacenará en otro registro antes de ser enviado
al CPU.

Ciclos de máquina

Cada vez que el CPU ejecuta una instrucción, realiza una serie de pasos. Las
series completas de pasos se conocen como un ciclo de máquina. Un ciclo de
máquina puede ser dividido en dos ciclos más pequeños: el ciclo de instrucciones
y el ciclo de ejecución. En el inicio del ciclo de máquina (es decir, durante
el ciclo de instrucciones), el CPU lleva a cabo dos pasos:

1. Recolectar. Antes de que el CPU pueda ejecutar alguna instrucción, la


unidad de control debe recuperar (o recolectar) un comando o datos desde
la memoria de la computadora.
2. Decodificar. Antes de que se pueda ejecutar un comando, la unidad de
control debe separar (o decodificar) el comando en instrucciones que
corresponden a aquellas que pertenecen al conjunto de instrucciones del
CPU, produciendo un sonido.

En este punto, el CPU está listo para comenzar el ciclo de ejecución:

1. Ejecutar. Cuando el comando es ejecutado, el CPU lleva a cabo las


instrucciones en orden al convertirlas en microcódigo.

3
Introducción a los Microprocesadores y Microcontroladores

2. Almacenar. Es posible que el CPU necesite almacenar los resultados de


una instrucción en la memoria (pero no siempre es necesaria está
condición).

Memoria

El CPU necesita tener millones (o incluso miles de millones, en algunas


computadoras) de bytes de espacio para leer o escribir programas y datos
rápidamente mientras se están utilizando. Esta, área se conoce como memoria y
consiste en chips que están en la tarjeta madre o en una pequeña tarjeta de
circuitos que está insertada en la tarjeta madre. Esta memoria electrónica le
permite al CPU almacenar y recuperar datos rápidamente.

El CPU utiliza una dirección de memoria para almacenar y recuperar cada


fragmento de datos. Una dirección de memoria es un número que indica una
ubicación en los chips de memoria, de la misma manera en que el número de una
oficina postal indica una ranura en la cual se puede colocar el correo. Las
direcciones de memoria empiezan en cero y aumentan hasta llegar a uno menos
que el número de bytes de la memoria que tiene la computadora.

El reloj interno de las computadoras

Todas las computadoras tienen un reloj del sistema, el reloj es controlado por
un cristal de cuarzo. Cuando se le aplica electricidad, las moléculas en el
cristal vibran millones de veces por segundo, con una velocidad que nunca
cambia. La velocidad de las vibraciones está determinada por el grosor del
cristal. La computadora utiliza las vibraciones del cuarzo del reloj del sistema
para marcar el tiempo de sus operaciones de procesamiento.

La velocidad de operación de la computadora está ligada a la velocidad del


reloj del sistema. Por ejemplo, si la velocidad del reloj de una computadora
es 800 MHz, quiere decir que hace 800 millones de “tics" por segundo. Un ciclo

4
Introducción a los Microprocesadores y Microcontroladores

de reloj es un solo tic, o el tiempo que se toma para hacer que un transistor
se apague y vuelva a encender. Un procesador puede ejecutar una instrucción
dentro de un número determinado de ciclos de reloj. A medida que aumenta la
velocidad del reloj del sistema, también lo hace la cantidad de instrucciones
que puede realizar cada segundo.

El bus

Un bus es una ruta entre los componentes de una computadora. Existen dos buses
principales en una computadora: el bus interno (o del sistema) y el bus externo
(o de expansión). El bus del sistema reside en la tarjeta madre y conecta al
CPU con otros dispositivos que se alojan en la tarjeta madre. Un bus de
expansión conecta dispositivos externos, como el teclado, mouse, módem,
impresora y otros, con el CPU. Los cables de las unidades de disco y otros
dispositivos internos se conectan al bus. El bus del sistema tiene dos partes:
el bus de datos y el bus de direcciones.

El bus de datos

El bus de datos es una ruta eléctrica que conecta al CPU, memoria y los otros
dispositivos de hardware en la tarjeta madre. En realidad, el bus es un conjunto
de cables paralelos. El número de cables en el bus afecta la velocidad con la
cual pueden viajar los datos entre los componentes de hardware, de la misma
manera en que el número de carriles de una vía rápida afecta el tiempo en que
las personas pueden llegar a su destino. Debido a que cada cable puede
transportar 1 bit de datos por vez, un bus de 8 cables puede mover 8 bits por
vez, lo cual es un byte completo (véase la figura 5A.16). Un bus de 16 bits
puede transferir 2 bytes y un bus de 32 bits puede transferir 4 bytes por vez.
Los modelos más nuevos de computadoras tienen un bus de datos de 64 bits,
conocido como bus frontal, el cual transfiere 8 bytes por vez.

5
Introducción a los Microprocesadores y Microcontroladores

El bus de direcciones

El bus de direcciones es un conjunto de cables similar al del bus de datos, el


bus de direcciones sólo conecta al CPU y la RAM, además sólo transporta
direcciones de memoria. (Recuerde, cada Bus de 32bits byte de la R A M está
asociado con un número que es su dirección de memoria.)

Memoria caché

Mover los datos entre la RAM y los registros del CPU es una de las operaciones
más consumidoras de tiempo que un CPU debe realizar, debido simplemente a que
la RAM es mucho más lenta que el CPU. Una solución parcial a este problema es
incluir un caché de memoria en el CPU. El caché acelera el procesamiento al
almacenar datos o instrucciones que se utilizan frecuentemente en su memoria
de alta velocidad. Aquí se muestra el caché externo (Nivel 2), aunque la mayoría
de las computadoras también cuenta con circuitos de memoria que están integrados
directamente al CPU

Cuando un programa se está ejecutando y el CPU necesita leer datos o


instrucciones de programa desde la RAM, el CPU primero comprueba si los datos
están en el caché de memoria. Si los datos no están ahí, el CPU lee los datos
desde la RAM y los coloca en sus registros, pero también carga una copia de
los datos en el caché de memoria. La siguiente vez que el CPU necesita los
mismos datos, los encuentra en el caché de memoria y se ahorra el tiempo
necesario para cargar los datos desde la RAM.

Matriz de Registros

Un sistema de cómputo exige de la CPU la realización de varias funciones,


captar instrucciones, interpretar instrucciones, captar datos, procesar datos
y escribir datos; para que un microprocesador pueda realizar las tareas en un
sistema de cómputo, es necesario que la CPU almacene alguna información de
forma temporal. Esta información debe contener en un almacenamiento temporal
la instrucción a ejecutar, los datos sobre los que debe operar, la dirección
de la instrucción o dato a cargar en la ALU, las direcciones de salto o llamado,
de forma que pueda saber dónde ir a buscar la siguiente instrucción.

Lo anterior hace necesario que la CPU requiera de una memoria interna, es así
como en la CPU, existe un conjunto de registros funcionando como un nivel de
memoria que está por encima de la memoria principal y la cache, estos registros
se conocen como la matriz de registros y pueden ser de dos tipos:

1. Registros visibles para el usuario: Permiten al programador de lenguaje


máquina o ensamblador, minimizar las referencias a memoria principal

6
Introducción a los Microprocesadores y Microcontroladores

optimizando el uso de estos registros, estos registros se pueden


referenciar mediante lenguaje máquina, están disponibles para todos los
programas (de sistemas y aplicación).

2. Registros de control y de estado: Utilizados por la Unidad de Control


para controlar las operaciones del procesador, y por los programas o
rutinas con privilegios del Sistema Operativo para controlar la ejecución
del programa.

Segmentos

Cualquier operación que accede a la memoria se hace mediante registros que


seleccionan un área contigua de memoria que puede ser de 64 KB, conocida como
segmento, estos segmentos en su interior tienen desplazamientos internos para
acceder la información. El procesador generalmente tiene cuatro registros
llamados registros de segmentos:

 CS-Code segment o registro de segmento de código: se encuentra asociado


al código del programa, es decir, controla el código de los programas y
tiene como complemento el registro IP. La combinación CS:IP da como
resultado la siguiente instrucción a ser ejecutada,

 DS-Data Segment o registro del segmento de datos: es donde se guardan


los datos del programa.

 ES-Extra Segment o registro de segmento extra: sirve como apoyo al


segmento de datos ofreciendo una ampliación del mismo.

 SS-Stack Segment o registro del segmento de pila: tiene la función de


controlar el área donde se creará la pila.

7
Introducción a los Microprocesadores y Microcontroladores

El Microcontrolador

¿Qué es un Microcontrolador?

Es un circuito integrado programable que contiene todos los componentes de un


computador. Un microcontrolador es un circuito integrado digital que puede ser
usado para muy diversos propósitos debido a que es programable. Está compuesto
por una unidad central de proceso (CPU), memorias (ROM y RAM) y líneas de
entrada y salida (periféricos).

Como podrás darte cuenta, un microcontrolador tiene los mismos bloques de


funcionamiento básicos de una computadora lo que nos permite tratarlo como un
pequeño dispositivo de cómputo. Se emplea para controlar el funcionamiento de
una tarea determinada y, debido a su reducido tamaño, suele ir incorporado en
el propio dispositivo al que gobierna. Esta última característica es la que le
confiere la denominación de «controlador incrustado» (embedded controller). El
microcontrolador es un computador dedicado, en su memoria sólo reside un
programa destinado a gobernar una aplicación determinada; sus líneas de
entrada/salida soportan el conexionado de los sensores y actuadores del
dispositivo a controlar, y todos los recursos complementarios disponibles
tienen como única finalidad atender sus requerimientos. Una vez programado y
configurado el microcontrolador solamente sirve para gobernar la tarea
asignada.

La estructura básica de un microcontrolador se compone de un procesador central,


el cual funciona como el cerebro encargado de gobernar todo el funcionamiento
y ejecutar las instrucciones. Encontramos también dos tipos de memoria, una
llamada memoria de programa y la otra se conoce como memoria de datos, Las
memorias se encargan de almacenar información.

Un microcontrolador posee todos los componentes de un computador, pero con unas


características fijas que no pueden alterarse. Las partes principales de un
microcontrolador son:

1. Procesador.
2. Memoria no volátil para contener el programa.
3. Memoria de lectura y escritura para guardar los datos.
4. Líneas de EIS para los controladores de periféricos:
a) Comunicación paralela.
b) Comunicación serie.
c) Diversas puertas de comunicación (bus l2ºC, USB, etc.).
5. Recursos auxiliares:
a) Circuito de reloj.
b) Temporizadores.
c) Perro Guardíán («watchdog»).
d) Conversores AD y DA.
e) Comparadores analógicos.

8
Introducción a los Microprocesadores y Microcontroladores

f) Protección ante fallos de la alimentación.


g) Estado de reposo o de bajo consumo.

La memoria de programa: Es el equivalente al disco duro de una PC, donde se


almacenan todas las instrucciones que queremos ejecutar, y al igual que un
disco duro la información se almacena indefinidamente, pero a diferencia de
este, que puede almacenar GB o TB, esta memoria solo almacena KB.

Visto más de cerca, el proceso de almacenamiento: Nuestra instrucción es


traducida de lenguaje ensamblador a lenguaje de máquina, y cada instrucción
será de cierta cantidad bits (según la versión del microcontrolador), las
cuales se irán almacenando sucesivamente en la memoria. Dicha memoria es capaz
de almacenar varios miles de instrucciones.

El microcontrolador está diseñado para que en su memoria de programa se


almacenen todas las instrucciones del programa de control. No hay posibilidad
de utilizar memorias externas de ampliación.
Como el programa a ejecutar siempre es el mismo, debe estar grabado de forma
permanente. Los tipos de memoria adecuados para soportar esta función admiten
cinco versiones diferentes:

9
Introducción a los Microprocesadores y Microcontroladores

1. ROM con máscara: En este tipo de memoria el programa se graba en el chip


durante el proceso de su fabricación mediante el uso de «máscaras». Los
altos costes de diseño e instrumental sólo aconsejan usar este tipo de
memoria cuando se precisan series muy grandes.

2. EPROM: La grabación de esta memoria se realiza mediante un dispositivo


físico gobernado desde un computador personal, que recibe el nombre de
grabador. En la superficie de la cápsula del microcontrolador existe una
ventana de cristal por la que se puede someter al chip de la memoria a
rayos ultravioletas para producir su borrado y emplearla nuevamente. Es
interesante la memoria EPROM en la fase de diseño y depuración de los
programas, pero su coste unitario es elevado.

3. OTP: (Programable una vez) Este modelo de memoria sólo se puede grabar
una vez por parte del usuario, utilizando el mismo procedimiento que con
la memoria EPROM. Posteriormente no se puede borrar. Su bajo precio y la
sencillez de la grabación aconsejan este tipo de memoria para prototipos
finales y series de producción cortas.

4. EEPROM: La grabación es similar a las memorias OTP y EPROM, pero el


borrado es mucho más sencillo al poderse efectuar de la misma forma que
el grabado, o sea, eléctricamente. Sobre el mismo zócalo del grabador
puede ser programada y borrada tantas veces como se quiera, lo cual la
hace ideal en la enseñanza y en la creación de nuevos proyectos. El
fabuloso PIC16C84 dispone de 1 K palabras de memoria EEPROM para contener
instrucciones y también tiene algunos bytes de memoria de datos de este
tipo para evitar que cuando se retira la alimentación se pierda
información. Aunque se garantiza 1.000.000 de ciclos de escritura/borrado
en una EEPROM, todavía su tecnología de fabricación tiene obstáculos para
alcanzar capacidades importantes y el tiempo de escritura de las mismas
es relativamente grande y con elevado consumo de energía.

5. FLASH: Se trata de una memoria no volátil, de bajo consumo, que se puede


escribir y borrar en circuito al igual que las EEPROM, pero suelen
disponer de mayor capacidad que estas últimas. El borrado sólo es posible
con bloques completos y no se puede realizar sobre posiciones concretas.
En las FLASH se garantizan 1.000 ciclos de escritura-borrado. Son muy
recomendables en aplicaciones en las que sea necesario modificar el
programa a lo largo de la vida del producto, como consecuencia del
desgaste o cambios de piezas, como sucede con los vehículos. Por sus
mejores prestaciones está sustituyendo a la memoria EEPROM para contener
instrucciones. De esta forma Microchip comercializa dos
microcontroladores prácticamente iguales, que sólo se diferencian en que
la memoria de programa de uno de ellos es tipo EEPROM y la del otro tipo
Flash. Se trata del PIC 16C84 y el PIC 16F84, respectivamente. En la
actualidad Microchip tiene abierta una línea de PIC con memoria Flash
cada vez más extensa y utilizada.

10
Introducción a los Microprocesadores y Microcontroladores

La memoria de datos: Equivale a la memoria RAM de una PC, y en ella se almacenan


datos temporales, y son borrados cuando se apaga el microcontrolador, cada
espacio se le llama registro. Nos podemos imaginar la memoria de datos como un
archivo físico, en el que cada cajo representa un registro, y posee una
dirección en el que puede ser identificado.

Los datos que manejan los programas varían continuamente, y esto exige que la
memoria que les contiene debe ser de lectura y escritura, por lo que la memoria
RAM estática (SRAM) es la más adecuada, aunque sea volátil.

Hay microcontroladores que también disponen como memoria de datos una de lectura
y escritura no volátil, del tipo EEPROM. De esta forma, un corte en el
suministro de la alimentación no ocasiona la pérdida de la información, que
está disponible al reiniciarse el programa. El PIC16C84, el PIC16F83 y el
PIC16F84 disponen de 64 bytes de memoria EEPROM para contener datos.

Líneas de E/S para los controladores de periféricos.


A excepción de dos patitas destinadas a recibir la alimentación, otras dos para
el cristal de cuarzo, que regula la frecuencia de trabajo, y una más para
provocar el Reset, las restantes patitas de un microcontrolador sirven para
soportar su comunicación con los periféricos externos que controla.

Las líneas de E/S que se adaptan con los periféricos manejan información en
paralelo y se agrupan en conjuntos de ocho, que reciben el nombre de Puertas.
Hay modelos con líneas que soportan la comunicación en serie; otros disponen
de conjuntos de líneas que implementan puertas de comunicación para diversos
protocolos, como el I2ºC, el USB, etc.

Recursos auxiliares.
Según las aplicaciones a las que orienta el fabricante cada modelo de
microcontrolador, incorpora una diversidad de complementos que refuerzan la
potencia y la flexibilidad del dispositivo. Entre los recursos más comunes se
citan a los siguientes:
a) Circuito de reloj: Encargado de generar los impulsos que sincronizan el
funcionamiento de todo el sistema.
b) Temporizadores, orientados a controlar tiempos.
c) Perro Guardián («watchdog»): Destinado a provocar una reinicialización
cuando el programa queda bloqueado.
d) Conversores AD y DA: Para poder recibir y enviar señales analógicas.
e) Comparadores analógicos: Para verificar el valor de una señal analógica.
f) Sistema de protección ante fallos de la alimentación.
g) Estado de Reposo: En el que el sistema queda «congelado» y el consumo
de energía se reduce al mínimo.

Programación de Microcontroladores
La utilización de los lenguajes más cercanos a la máquina (de bajo nivel)
representan un considerable ahorro de código en la confección de los programas,
lo que es muy importante dada la estricta limitación de la capacidad de la

11
Introducción a los Microprocesadores y Microcontroladores

memoria de instrucciones. Los programas bien realizados en lenguaje Ensamblador


optimizan el tamaño de la memoria que ocupan y su ejecución es muy rápida.

Los lenguajes de alto nivel más empleados con microcontroladores son el C y el


BASIC, de los que existen varias empresas que comercializan versiones de
compiladores e intérpretes para diversas familias de microcontroladores. En el
caso de los PIC es muy competitivo e interesante el compilador de C PCM de la
empresa CCS y el intérprete PBASIC de PARALLAX.

Arquitectura de microcontroladores

La arquitectura de un microcontrolador permite definir la estructura de su


funcionamiento, las dos arquitecturas principales usadas en la fabricación de
microcontroladores son: arquitectura de Von Neumann y arquitectura Harvard:

 Arquitectura de Von Neumann: En esta arquitectura, los datos y las


instrucciones circulan por el mismo bus ya que estos son guardados en la
misma memoria, su principal ventaja es el ahorro de líneas de entrada-
salida, pero esto supone una disminución en la velocidad con la que se
realizan los procesos.

Este tipo de arquitectura es hoy en día muy común en los computadores


personales, y fue muy común en la construcción de microcontroladores
hasta que se descubrieron las grandes ventajas de la arquitectura
Harvard.

 Arquitectura Harvard: La arquitectura Harvard existe una memoria


específica para datos y una memoria específica para las instrucciones,
de esta forma se usan dos buses bien diferenciados. Con esto se logra
trabajar con las dos memorias simultáneamente y en consecuencia se
obtiene mucha más velocidad en la ejecución de los programas.

12
Introducción a los Microprocesadores y Microcontroladores

Actualmente, la tendencia de los microcontroladores es usar este tipo de


arquitectura.

13
Introducción a los Microprocesadores y Microcontroladores

Conclusiones

Al principio, cuando aparecieron los primeros microcontroladores no se pensó


que estos fuesen a causar un gran impacto en las vidas de las personas y en el
mundo, pero a medida que pasaron los años, se fue demostrando la verdadera
revolución que ocasionarían mejorando nuestras vidas.

Hoy en día hay microcontroladores en todo lo que nos rodea, disminuyendo los
espacios requeridos por los circuitos, aumento del control de los dispositivos
electrónicos, etc.

Además, se pudo experimentar de forma práctica algunas características


importantes que nos permiten facilitarnos la vida, con una simple manipulación
de led, el cual es el comienzo de robot en industrias automatizadas,
automóviles, en fin, un mundo de posibilidades incontables que van creciendo
día a día.

Dentro de esta idea de control son importantes dos puntos, el primero es la


medición de las variables que participan el proceso y que determinan su
resultado, y el segundo es dar paso a acciones que lleven estas variables a
los valores considerados adecuados. Así, pudiendo manejar estos puntos, el
proceso debería comportarse de una manera prevista y los resultados obtenidos
serán muy cercanos a los esperados, cosa muy importante ya que en muchos de
estos procesos un funcionamiento erróneo puede conllevar a pérdidas cuantiosas
en cuanto a lo económico o irremediables cuando se trata de la seguridad de
las personas.

14
Introducción a los Microprocesadores y Microcontroladores

Bibliografía

Peter Norton: introducción a la computación; sexta edición.

Rojas, Ponce Alberto. (1997). “Ensamblador Básico”. Editorial Computec.


AlfaOmega Santafé de Bogotá.

CEKIT. (2002). Curso Práctico de Microcontroladores: Teoría, Programación,


Diseño, Prácticas Proyectos completos. Editorial Cekit. Pereira-Colombia.

Téllez, Acuña Freddy Reynaldo. (2007). Módulo de Microprocesadores y


Microcontroladores. UNAD.

Vesga, Ferreira Juan Carlos. (2007). Microcontroladores Motorola – Freescale:


Programación, familias y sus distintas aplicaciones en la industria.

González, Vásquez José Adolfo. (1992). Introducción a los microcontroladores:


hardware, software y aplicaciones. Editorial McGraw-Hill.

Angulo. (n.d). Microcontroladores PIC, la solución en un chip. Sección 5.1

Valdivia, Miranda Carlos. (n. d). Arquitectura de equipos y sistemas


informáticos. Editorial Paraninfo.

15

Vous aimerez peut-être aussi