Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INFORME MICROCONTROLADORES
1
1. Tabla de Contenido
1. Introduccin........................................................................................................................... 1
2. Marco terico. ....................................................................................................................... 2
2.1. El microcontrolador. .................................................................................................. 2
2.2. Diferencias entre microprocesador y microcontrolador. .............................................. 3
2.3. Estructura bsica........................................................................................................ 4
2.4. Proceso en detalle. .................................................................................................... 5
2.4.1. Registros. ................................................................................................................ 6
2.4.2. Unidad de control. .................................................................................................. 6
2.4.3. Unidad aritmtico-lgica. ........................................................................................ 7
2.4.4. Buses. ..................................................................................................................... 7
2.4.5. Conjunto de instrucciones....................................................................................... 7
2.5. Memoria. .................................................................................................................. 8
2.6. Perifricos. ................................................................................................................ 9
2.6.1. Temporizadores y contadores. ................................................................................ 9
2.6.2. Conversor analgico/digital..................................................................................... 9
2.6.3. Puertos de comunicacin. ....................................................................................... 9
2.6.4. Comparadores. ..................................................................................................... 10
2.6.5. Modulador de ancho de pulso (PWM). .................................................................. 10
2.7. Lenguaje entre el microcontrolador y nosotros. ........................................................ 11
3. Experiencia en el laboratorio y otros. ................................................................................... 14
3.1 Configuracin del software. ..................................................................................... 14
3.2 Conexin del Micro controlador. .............................................................................. 14
3.3 Actividades con MCLS-Software. .............................................................................. 14
3.3.1 Parpadeo de un LED. ............................................................................................. 14
3.3.2 Tira de LEDs. ......................................................................................................... 15
3.4 Problemas. .............................................................................................................. 16
4. Conclusiones. ....................................................................................................................... 17
2
1. Introduccin
1
2. Marco terico.
2.1.El microcontrolador.
2
2.2.Diferencias entre microprocesador y microcontrolador.
3
Figura 3: Figura general perifricos.
El microcontrolador es un sistema cerrado. Todas las partes del computador estn contenidas en
su interior y slo salen al exterior las lneas que gobiernan los perifricos.
2.3.Estructura bsica.
Estos dispositivos representan la inmensa mayora de los chips de computadoras vendidos, sobre
un 50% son controladores "simples" y el restante corresponde a DSPs ms especializados. Pueden
encontrarse en casi cualquier dispositivo electrnico como automviles, lavadoras, hornos
microondas, telfonos, etc.
Un microcontrolador difiere de una unidad central de procesamiento normal, debido a que es ms
fcil convertirla en una computadora en funcionamiento, con un mnimo de circuitos integrados
externos de apoyo.
4
Los microcontroladores disponen generalmente tambin de una gran variedad de dispositivos de
entrada/salida, como convertidores de analgico a digital, temporizadores, UARTs y buses de
interfaz serie especializados, como I2C y otros. Frecuentemente, estos dispositivos integrados
pueden ser controlados por instrucciones de procesadores especializados. Los modernos
microcontroladores frecuentemente incluyen un lenguaje de programacin integrado, como el
lenguaje de programacin BASIC que se utiliza bastante con este propsito.
Los microcontroladores negocian la velocidad y la flexibilidad para facilitar su uso. Debido a que se
utiliza bastante sitio en el chip para incluir funcionalidad, como los dispositivos de entrada/salida o
la memoria que incluye el microcontrolador, se ha de prescindir de cualquier otra circuitera.
2.4.Proceso en detalle.
Antes de que existieran los microcontroladores, existan circuitos integrados los cuales eran muy
sistemas digitales muy complejos, los cuales si se quera hacer una pequea modificacin de
cualquier tipo, se tenia que pensar en crear grandes cambios en la configuracin del hardware,
pero al avanzar los aos, pero todo eso cambio con el surgimiento del primer microcontrolador (el
4004 destinado al desarrollo de las calculadoras), este tiene la capacidad de hacer clculos
dependiendo de cdigos de entrada adecuados.
Visto as, no hay nada de especial en un microprocesador; la maravilla est en que la combinacin
adecuada de los cdigos de entrada, su ejecucin secuencial, el poder saltar hacia atrs o adelante
en la secuencia de cdigos en base a decisiones lgicas u rdenes especficas, permite que la
mquina realice un montn de operaciones complejas, no contempladas en los simples cdigos
bsicos.
Es lgico pensar que el invento del microprocesador integrado no fue una revelacin divina para
sus creadores, sino que se sustent en los avances, existentes hasta el momento, en el campo de
la electrnica digital y las teoras sobre computacin. Pero sin lugar a dudas fue la gota que
rebalso el vaso de la revolucin cientfico-tcnica, porque permiti desarrollar aplicaciones
impensadas o acelerar algunas ya encaminadas.
Ahora comenzaremos a ver cmo es que est hecho un procesador, no ser una explicacin
demasiado detallada porque desde su invencin ste ha tenido importantes revoluciones propias,
pero hay aspectos bsicos que no han cambiado y que constituyen la base de cualquier
microprocesador. En la Figura 'Esquema de un microcontrolador' podemos ver la estructura tpica
de un microprocesador, con sus componentes fundamentales, claro est que ningn procesador
real se ajusta exactamente a esta estructura, pero aun as nos permite conocer cada uno de sus
elementos bsicos y sus interrelaciones.
5
2.4.1. Registros.
Son un espacio de memoria muy reducido pero necesario para cualquier microprocesador, de
aqu se toman los datos para varias operaciones que debe realizar el resto de los circuitos del
procesador. Los registros sirven para almacenar los resultados de la ejecucin de instrucciones,
cargar datos desde la memoria externa o almacenarlos en ella.
Aunque la importancia de los registros parezca trivial, no lo es en absoluto. De hecho una parte de
los registros, la destinada a los datos, es la que determina uno de los parmetros ms importantes
de cualquier microprocesador. Cuando escuchamos que un procesador es de 4, 8, 16, 32 o 64 bits,
nos estamos refiriendo a procesadores que realizan sus operaciones con registros de datos de ese
tamao, y por supuesto, esto determina muchas de las potencialidades de estas mquinas.
Mientras mayor sea el nmero de bits de los registros de datos del procesador, mayores sern sus
prestaciones, en cuanto a poder de cmputo y velocidad de ejecucin, ya que este parmetro
determina la potencia que se puede incorporar al resto de los componentes del sistema, por
ejemplo, no tiene sentido tener una ALU de 16 bits en un procesador de 8 bits.
Por otro lado un procesador de 16 bits, puede que haga una suma de 16 bits en un solo ciclo de
mquina, mientras que uno de 8 bits deber ejecutar varias instrucciones antes de tener el
resultado, aun cuando ambos procesadores tengan la misma velocidad de ejecucin para sus
instrucciones. El procesador de 16 bits ser ms rpido porque puede hacer el mismo tipo de
tareas que uno de 8 bits, en menos tiempo.
Esta unidad es de las ms importantes en el procesador, en ella recae la lgica necesaria para la
decodificacin y ejecucin de las instrucciones, el control de los registros, la ALU, los buses y
cuanta cosa ms se quiera meter en el procesador.
La unidad de control es uno de los elementos fundamentales que determinan las prestaciones del
procesador, ya que su tipo y estructura, determina parmetros tales como el tipo de conjunto de
instrucciones, velocidad de ejecucin, tiempo del ciclo de mquina, tipo de buses que puede tener
el sistema, manejo de interrupciones y un buen nmero de cosas ms que en cualquier procesador
van a parar a este bloque.
6
controladores de memoria cache, controladores de buses, controladores de interrupcin,
pipelines, entre otros elementos, dependiendo siempre del tipo de procesador.
Como los procesadores son circuitos que hacen bsicamente operaciones lgicas y matemticas,
se le dedica a este proceso una unidad completa, con cierta independencia. Aqu es donde se
realizan las sumas, restas, y operaciones lgicas tpicas del lgebra.
2.4.4. Buses.
Son el medio de comunicacin que utilizan los diferentes componentes del procesador para
intercambiar informacin entre s, eventualmente los buses o una parte de ellos estarn reflejados
en los pines del encapsulado del procesador.
Existen tres tipos de buses:
Direccin: Se utiliza para seleccionar al dispositivo con el cual se quiere trabajar o en el
caso de las memorias, seleccionar el dato que se desea leer o escribir.
Datos.
Control: Se utiliza para gestionar los distintos procesos de escritura, lectura y controlar la
operacin de los dispositivos del sistema.
7
memoria o en los registros internos. Este tipo de repertorio dificulta el paralelismo entre
instrucciones, por lo que en la actualidad, la mayora de los sistemas CISC de alto rendimiento,
convierten las instrucciones complejas en varias instrucciones simples del tipo RISC, llamadas
generalmente microinstrucciones.
RISC, del ingls Reduced Instruction Set Computer, Computadora con Conjunto de Instrucciones
Reducido. Se centra en la obtencin de procesadores con las siguientes caractersticas
fundamentales:
Instrucciones de tamao fijo.
Pocas instrucciones.
Slo las instrucciones de carga y almacenamiento acceden a la memoria de datos.
Nmero relativamente elevado de registros de propsito general.
Una de las caractersticas ms destacables de este tipo de procesadores es que posibilitan el
paralelismo en la ejecucin, y reducen los accesos a memoria. Es por eso que los procesadores
ms modernos, tradicionalmente basados en arquitecturas CISC implementan mecanismos de
traduccin de instrucciones CISC a RISC, para aprovechar las ventajas de este tipo de
procesadores.
Los procesadores de los microcontroladores PIC son de tipo RISC.
2.5.Memoria.
8
Memoria de datos: Los datos que maneja los programas varan continuamente, y esto exige que
la memoria que los contiene debe ser de lectura y escritura, por lo que la memoria RAM esttica
(SRAM) es la ms adecuada, aunque sea voltil.
Hay microcontroladores que disponen como memoria de datos una de lectura y escritura no
voltil, del tipo EEPROM. De esta forma, un corte en el suministro de la alimentacin no ocasiona
la prdida de la informacin, que est disponible al reiniciarse el programa.
2.6.Perifricos.
Son circuitos sincrnicos para el conteo de los pulsos para poder tener una entrada de reloj. Si la
fuente de un gran conteo es el oscilador interno del microcontrolador es comn que no tengan un
pin asociado, y en este caso trabajan como temporizadores. Por otra parte, cuando la fuente de
conteo es externa, entonces tienen asociado un pin configurado como entrada, este es el modo
contador.
Es muy frecuente el trabajo con seales analgicas, stas deben ser convertidas a digital y por ello
muchos microcontroladores incorporan un conversor analgico-digital, el cual se utiliza para
tomar datos de varias entradas diferentes que se seleccionan mediante un multiplexor.
9
2.6.3.1. Puerto serie
Este perifrico est presente en casi cualquier microcontrolador, normalmente en forma
de UART (Universal Asynchronous Receiver Transmitter) o USART (Universal Synchronous
Asynchronous Receiver Transmitter) dependiendo de si permiten o no el modo sincrnico
de comunicacin.
2.6.3.2. SPI
Este tipo de perifrico se utiliza para comunicar al microcontrolador con otros
microcontroladores o con perifricos externos conectados a l, por medio de una interfaz
muy sencilla . Hay solo un nodo controlador que permite iniciar cualquier transaccin, lo
cual es una desventaja en sistemas complejos, pero su sencillez permite el aislamiento
galvnico de forma directa por medio de optoacopladores.
2.6.3.3. I2C
Cumple las mismas funciones que el SPI, pero requiere menos seales de comunicacin y
cualquier nodo puede iniciar una transaccin. Es muy utilizado para conectar las tarjetas
grficas de las computadores personales con los monitores, para que estos ltimos
informen de sus prestaciones y permitir la autoconfiguracin del sistema de video.
2.6.3.4. USB
Los microcontroladores son los que han permitido la existencia de este sistema de
comunicacin. Es un sistema que trabaja por polling (monitoreo) de un conjunto de
perifricos inteligentes por parte de un amo, que es normalmente un computador
personal. Cada nodo inteligente est gobernado inevitablemente por un microcontrolador.
2.6.4. Comparadores.
Son circuitos analgicos basados en amplificadores operacionales que tienen la caracterstica de
comparar dos seales analgicas y dar como salida los niveles lgicos 0 o 1 en dependencia del
resultado de la comparacin. Es un perifrico muy til para detectar cambios en seales de
entrada de las que solamente nos interesa conocer cuando est en un rango determinado.
10
2.7. Lenguaje entre el microcontrolador y nosotros.
Los circuitos microprogramables son sistemas digitales, lo que significa que trabajan con dos
nicos niveles de tensin. Dichos niveles, por abstraccin, se simbolizan con el cero, 0, y el uno, 1,
por eso el lenguaje de mquina slo utiliza dichos signos. Esto permite el empleo de las teoras
del lgebra booleana y del sistema binario en el diseo de este tipo de circuitos y en su
programacin.
11
En principio, dado que el sistema usual de numeracin
num es de base decimal y, por ello, slo se
dispone de diez dgitos, se adopt la convencin de usar las seis primeras letras del alfabeto latino
para suplir los dgitos quee nos faltan. El conjunto de smbolos sera, por tanto, el siguiente:
S = {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}
Se debe notar que A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15. En ocasiones se emplean letras
minsculas en lugar de maysculas. Como en cualquier sistema de numeracin posicional, el valor
numrico de cada dgito es alterado dependiendo de su posicin en la cadena de dgitos,
quedando multiplicado por una cierta potencia de la base del sistema, que en este caso es 16. Por
ejemplo: 3E0A16 = 3163 + E162 + 0161 + A160 = 34096 + 14256 + 016 + 101 = 15882.
El sistema hexadecimal actual fue introducido en el mbito de la computacin por primera vez
por IBM en 1963.. Una representacin anterior, con 0 09 y uz, z, fue usada en 1956 por la
computadora Bendix G-15.
12
Muchos sofisticados ensambladores ofrecen mecanismos adicionales para facilitar el desarrollo
del programa, controlar el proceso de ensamblaje, y la ayuda de depuracin.
Fue usado principalmente en los inicios del desarrollo de software, cuando an no se contaba con
potentes lenguajes de alto nivel y los recursos eran limitados. Actualmente se utiliza con
frecuencia en ambientes acadmicos y de investigacin, especialmente cuando se requiere la
manipulacin directa de hardware, altos rendimientos, o un uso de recursos controlado y
reducido.
Muchos dispositivos programables (como los microcontroladores) an cuentan con el
ensamblador como la nica manera de ser manipulados.
13
3. Experiencia en el laboratorio y otros.
Primero que todo, es necesario configurar el software que se utiliza para hacer funcionar y
programar el micro controlador. Al proceder con esto hubo un problema grave con la
compatibilidad del software con la versin del sistema operativo, por lo tanto se procedi a
descargar una nueva versin que contiene una actualizacin que sirve para hacerlo funcionar. El
software utilizado esta en http://mcls-modular.de/download/deutsch/idev310.exe .
Al instalarlo, identifica por si mismo que esta conectado un hardware conocido. Se elige el 80C535
y se contina. Lo dems procede de la misma forma que se seala en la gua de trabajo.
La conexin que hay entre la plataforma de trabajo y el computador es va puerto COM. Al tener
esto conectado, se necesita que las placas estn correctamente conectadas en la plataforma y
tambin estn correctamente conectadas entre ellas. Al hacerlo as, se puede proceder a probar
los distintos programas que trae el software.
14
Luego, al abrir el archivo blink1.asm en el programa, y despus de analizar su contenido, se obtuvo
el resultado esperado. Se logr que el LED conectado al puerto P1.7 se encendiera. Ese puerto se
puede cambiar, buscndolo en el cdigo y eligiendo el que uno quiera. Por otro lado, dentro de las
lneas de comandos, se encuentra un subprograma llamado tiempo, el cual da la orden al LED de
parpadear con cierta frecuencia. Si este subprograma no se encuentra, el LED simplemente no
parpadear. Por ltimo, el switch al cual se conecta, no influye en este programa, ya que al
moverse no hace ninguna variacin en el LED que parpadea.
15
Como se ve, todos los LEDs estn conectados a un puerto diferente lo cual hace pensar que cada
uno se debera comportar de una forma diferente con respecto a otro.
De hecho, al abrir el programa led_II.asm en el software, se logra que los LEDs se prendan,
logrando una secuencia entre todos. Esta secuencia est determinada por una lnea de comando
que contiene 8 valores, que son ceros y unos, y que est desfasada para cada LED, de forma que se
logra obtener la secuencia mencionada. Ese desfase, es controlado por el subprograma tiempo
que determina un cierto periodo entre una orden y otra. Por ltimo, es importante sealar que en
esta experiencia, el switch si es til. Lo que hace es hacer funcionar la secuencia al revs, es decir,
el cdigo entra al revs por cada led, haciendo que se vea al revs el juego de luces.
3.4 Problemas.
Uno de los ms grandes problemas que se tuvo, fue no poder hacer funcionar el programa en un
principio, lo cual imposibilitaba todo el desarrollo de la actividad. Pero no solo surgi ese
problema. Tambin ocurri que las ltimas dos experiencias no estaban en el software, por lo
tanto no se pudieron concretar. Estas actividades corresponden a Encendido de Led por medio de
teclado y Conteo Hexadecimal.
16
4. 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
aos, se fue demostrando la verdadera revolucin que ocasionaran mejorando nuestras vidas.
Hoy en dia hay microcontroladores en todo lo que nos rodea, disminuyendo los espacios
requeridos por los circuito, aumento del control de los dispositivos electrnicos, etc.
Adems se pudo experimentar de forma practica algunas caractersticas importantes que nos
permiten facilitarnos la vida, con una simple manipulacin de led, el cual es el comienzo de robot
en industrias automatizadas, automviles, en fin, un mundo de posibilidades incontables que van
creciendo da a da.
17