Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Página: 1 de 30
Grupo:
APELLIDO, Nombres
Castelvero, Maximiliano (10515)
Pereda Mariano (10411)
Gustavo Rodriguez (10226)
Índice
Hoy se puede comprar tarjetas de felicitación que contienen procesadores con mayor
poder de cómputo que las computadoras más grandes del mundo en 1971. Los micro
controladores son tan ubicuos y económicos que ahora los ponemos bajo la piel de
nuestras mascotas, los cosemos a prendas de vestir y los agregamos a bombillas
eléctricas, tenis para correr, ataduras de esquíes y joyería.
Muchos futuristas predicen que en siete generaciones contadas a partir de ahora, estos
chips incorporarán reconocimiento del habla a procesadores de textos y sistemas de
entrada de pedidos. Producirán gráficos en 3D del tamaño de muros para televisión,
teleconferencias e incluso películas personalizadas. Dirigirán nuestros vehículos para
optimizar la seguridad y crearán mundos virtuales por los que nos desplazaremos.
Darán instrucción a nuestros hijos, supervisarán nuestra salud, reemplazarán partes
perdidas del cuerpo y, a través de una retícula de miles de millones de sensores, nos
conectarán con el mundo en formas que sólo podemos imaginar vagamente.
En definitiva, el micro controlador puede ser considerado como uno de los inventos
más importantes de este siglo, y quien sabe si también del próximo.
El campo de los micros controladores tiene sus principios de desarrollo en la tecnología
de los circuitos integrados, en la cual es posible almacenar miles de transistores dentro
de un solo chip. Esto fue un prerrequisito para la producción de los microprocesadores.
Las primeras computadoras fueron construidas agregando componentes externos
como lo son: memorias, puertos de salida y entrada, contadores de tiempo, entre otros.
Con el crecimiento en el desarrollo del circuitos integrados fue posible hacer más
grandes los encapsulados, logrando integrar en un solo encapsulado los procesadores
y periféricos.
TRABAJO PRÁCTICO Versión: Final
Página: 5 de 30
Dispositivos asociados
Cada vez existen más productos que incorporan un micro controlador con el fin de
aumentar sustancialmente sus prestaciones, reducir su tamaño y coste, mejorar su
fiabilidad y disminuir el consumo.
Algunos fabricantes de micro controladores superan el millón de unidades de un
modelo determinado producidas en una semana. Este dato puede dar una idea de la
masiva utilización de estos componentes.
Los micro controladores están siendo empleados en multitud de sistemas presentes en
nuestra vida diaria, como pueden ser juguetes, horno microondas, frigoríficos,
televisores, computadoras, impresoras, módems, el sistema de arranque de nuestro
coche, etc. Y otras aplicaciones con las que seguramente no estaremos tan
familiarizados como instrumentación electrónica, control de sistemas en una nave
espacial, etc. Una aplicación típica podría emplear varios micro controladores para
controlar pequeñas partes del sistema. Estos pequeños controladores podrían
comunicarse entre ellos y con un procesador central, probablemente más potente, para
compartir la información y coordinar sus acciones, como, de hecho, ocurre ya
habitualmente en cualquier PC.
Los PIC son integrados capaces de ser programados desde un computador y seguir
una secuencia. Conviene recordar que un PIC16F628A es uno de los más conocidos,
razón por la cual su estructura brinda un esquema universal. El siguiente es su
diagrama circuital por bloques, que se debe entender desde la electrónica, que es la
base del trabajo de programación de los PIC:
TRABAJO PRÁCTICO Versión: Final
Página: 6 de 30
La distribución de pines es la siguiente, así es como se ve por fuera y cada pin tiene
una o más funciones asignadas, cada vez que se utiliza una función hay que tener en
cuenta que no se deben usar las otras asignadas en el mismo pin, es decir, un terminal
solo puede realizar una función al tiempo, así en la etapa de planeación del proyecto se
debe definir que función utilizar para cada pin, de las que este está en habilidad de
desempeñar.
TRABAJO PRÁCTICO Versión: Final
Página: 7 de 30
Tiene 13 entradas salidas programables, que permiten llevar a cabo una gran
cantidad de proyectos. Las salidas se corresponden con pines.
Tiene 64 bytes de EEProm, para guardar información. Esta memoria es
electrónicamente grabable y borrable. Últimamente se ha introducido la memoria
Flash que puede ampliar su capacidad.
Tiene 1 Mb de memoria con código lo suficientemente comprimido como para
aprovechar al máximo la memoria.
Tiene un oscilador a cristal o a RC de velocidad media: 4 Mhz o 20 Mhz en los
Hs.
Cuatro fuentes de interrupción diferentes para llamar la atención en cualquier
momento.
La ficha técnica de este PIC es la siguiente:
funcionamiento del micro controlador. Todas las instrucciones que el micro controlador
puede reconocer y ejecutar se les denominan colectivamente Conjunto de
instrucciones. Como es más fácil trabajar con el sistema de numeración hexadecimal,
el código ejecutable se representa con frecuencia como una serie de los números
hexadecimales denominada código Hex. En los micros controladores PIC con las
palabras de programa de 14 bits de anchura, el conjunto de instrucciones tiene 35
instrucciones diferentes.
LENGUAJE ENSAMBLADOR
Los lenguajes de programación de alto nivel (Basic, Pascal, C etc.) fueron creados con
el propósito de superar las desventajas del ensamblador. En lenguajes de
programación de alto nivel varias instrucciones en ensamblador se sustituyen por una
sentencia. El programador ya no tiene que conocer el conjunto de instrucciones o
características del hardware del microcontrolador utilizado. Ya no es posible conocer
TRABAJO PRÁCTICO Versión: Final
Página: 11 de 30
Otro ejemplo
Este ejemplo ilustra la respuesta a estímulos externos utilizando interrupciones
implementada en lenguaje C para el compilador PICC Lite. El programa permite
encender y apagar un LED al presionar un botón pulsador. Antes de encender o apagar
el LED este parpadea tres veces anunciando el cambio de estado.
TRABAJO PRÁCTICO Versión: Final
Página: 17 de 30
ven la televisión para ello toman el control remoto y la encienden, ahí está otro
micro controlador.
si tiene automóvil, lo que hace primero es quitar la alarma o abrir los seguros
eléctricos.
TRABAJO PRÁCTICO Versión: Final
Página: 18 de 30
Prende el estéreo y escucha música, pues el auto estéreo tiene uno o más micro
controladores.
TRABAJO PRÁCTICO Versión: Final
Página: 19 de 30
Son muchas las aplicaciones de los micro controladores, y no solo en el hogar, existen
otros muchos campos de aplicaciones de estos chips, para que el lector tenga una idea
de ello, el siguiente video muestra aproximadamente 50 o más productos finales que en
su interior llevan uno o más micro controladores.
Otros Tipos de micro controladores son los Arduino es una plataforma de hardware
libre, basada en una placa con un micro controlador y un entorno de desarrollo,
diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares
ATMEL
El hardware consiste en una placa con un micro controlador Atmel AVR y puertos
de entrada/salida. Los micro controladores más usados son
el Atmega168, Atmega328, Atmega1280, ATmega8 por su sencillez y bajo coste que
permiten el desarrollo de múltiples diseños. Por otro lado el software consiste en un
entorno de desarrollo que implementa el lenguaje de programación Processing / Wiring
y el cargador de arranque (boot loader) que corre en la placa.
Desde octubre de 2012, Arduino se usa también con micro controladoras CortexM3 de
ARM de 32 bits5 , que coexistirán con las más limitadas, pero también económicas
AVR de 8 bits. ARM y AVR no son plataformas compatibles a nivel binario, pero se
pueden programar con el mismo IDE de Arduino y hacerse programas que compilen sin
cambios en las dos plataformas. Eso sí, las micro controladoras CortexM3 usan 3.3V, a
diferencia de la mayoría de las placas con AVR que usan mayormente 5V. Sin embargo
ya anteriormente se lanzaron placas Arduino con Atmel AVR a 3.3V como la Arduino
Fio y existen clónicos de Arduino Nano y Pro como Meduino en que se puede conmutar
el voltaje.
TRABAJO PRÁCTICO Versión: Final
Página: 20 de 30
Arduino se puede utilizar para desarrollar objetos interactivos autónomos o puede ser
conectado a software del ordenador (por ejemplo:Macromedia
Flash, Processing, Max/MSP, Pure Data). Las placas se pueden montar a mano o
adquirirse. El entorno de desarrollo integrado libre se puede descargar gratuitamente.
Arduino es una plataforma de electrónica abierta para la creación de prototipos basada
en software y hardware flexibles muy fáciles de usar, debido a que el IDE con el que
trabaja es fácil de aprender a utilizar, y el lenguaje de programación con el que trabaja
es simple, pues se creó para artistas, diseñadores, aficionados y cualquier interesado
en crear entornos u objetos interactivos. Arduino puede tomar información del entorno a
través de sus pines de entrada de toda una gama de sensores y puede afectar aquello
que le rodea controlando luces, motores y otros actuadores. El microcontrolador en la
placa Arduino se programa mediante el lenguaje de programación Arduino (basasdo en
Wiring) y el entorno de desarrollo Arduino (basado en Processing). Los proyectos
hechos con Arduino pueden ejecutarse sin necesidad de conectar a un ordenador, si
bien tienen la posibilidad de hacerlo y comunicar con diferentes tipos de software (p.ej.
Flash, Processing, MaxMSP). Las placas pueden ser hechas a mano o compradas
montadas de fábrica; el software puede ser descargado de forma gratuita. Los ficheros
de diseño de referencia (CAD) están disponibles bajo una licencia abierta, así pues
eres libre de adaptarlos a tus necesidades.
Las aplicaciones que nos ofrece Arduino son múltiples, y dependerá de nuestra
imaginación. Mediante sensores podemos crear aplicaciones sencillas enfocadas a la
docencia para estudiantes de electrónica, proyectos más elaborados para la industria o
incluso sistemas dirigidos simplemente al ocio. Es muy utilizado también en los
entornos artísticos para crear obras más elaboradas, dada su facilidad de
programación.
Para hacer uso de una biblioteca en Sketch (el IDE de Arduino), basta con hacer clic
sobre “Import Library” en el menú, escoger una biblioteca y se añadirá el #include
correspondiente.
Serial
Lectura y escritura por el puerto serie.
EEPROM
Lectura y escritura en el almacenamiento permanente.
read(), write()
Ethernet
Conexión a Internet mediante “Arduino Ethernet Shield“. Puede funcionar como
servidor que acepta peticiones remotas o como cliente. Se permiten hasta cuatro
conexiones simultáneas.
Servidor: Server(), begin(), available(), write(), print(), println()
Cliente: Client(), connected(), connect(), write(), print(), println(), available(), read(),
flush(), stop()
Firmata
Comunicación con aplicaciones de ordenador utilizando el protocolo estándar del
puerto serie.
LiquidCrystal
Control de LCDs con chipset Hitachi HD44780 o compatibles.20 La biblioteca soporta
los modos de 4 y 8 bits.
Servo
Control de servo motores. A partir de la versión 0017 de Arduino la biblioteca soporta
hasta 12 motores en la mayoría de placas Arduino y 48 en la Arduino Mega.
attach(), write(), writeMicroseconds(), read(), attached(), detach()
El manejo de la biblioteca es bastante sencillo. Mediante attach(número de pin)
añadimos un servo y mediante write podemos indicar los grados que queremos que
tenga el motor (habitualmente de 0 a 180).
SoftwareSerial
TRABAJO PRÁCTICO Versión: Final
Página: 23 de 30
Visión de conjunto
El Arduino Mega 2560 es una placa electronica basada en el ATmega2560.Tiene 54
pines digitales de entrada / salida (de los cuales 15 se pueden utilizar como salidas
PWM), 16 entradas analógicas, 4 UARTs (puertas seriales), un oscilador de
16MHz, una conexión USB, un conector de alimentación, una cabecera ICSP, y un
botón de reinicio. Contiene todo lo necesario para apoyar el microcontrolador, basta
con conectarlo a un ordenador con un cable USB o el poder con un adaptador AC-DC o
batería para empezar. La Mega es compatible con la mayoría de los protectores
TRABAJO PRÁCTICO Versión: Final
Página: 24 de 30
Diagrama de bloques
TRABAJO PRÁCTICO Versión: Final
Página: 26 de 30
Resumen
Micro controladores Atmega2560
Voltaje de funcionamiento 5V
Voltaje de entrada
7-12V
(recomendado)
Voltaje de entrada (límites) 6-20V
Pines E / S digitales 54 (de los cuales 15 proporcionan PWM)
Pines de entrada analógica 16
DC Corriente por I / O Pin 40 mA
Corriente CC para Pin 3.3V 50 mA
256 KB de los cuales 8 KB usados por
Memoria Flash
bootloader
SRAM 8 KB
EEPROM 4 KB
Velocidad del reloj 16 MHz
Potencia
Los Mega Arduino puede ser alimentado a través de la conexión USB o con una fuente
de alimentación externa. La fuente de alimentación se selecciona automáticamente.
(No USB) Fuente de alimentación externa puede venir con un adaptador de AC-DC
(pared-verruga) o la batería. El adaptador se puede conectar al conectar un enchufe de
2,1 mm de centro positivo en el conector de alimentación de la placa. Cables de la
batería se pueden insertar en los cabezales de pin GND y Vin del conector de
alimentación.
La tarjeta puede funcionar con un suministro externo de 6 a 20 voltios. Si se
proporcionan menos de 7V, sin embargo, el pin de 5V puede suministrar menos de
cinco voltios y la junta puede ser inestable. Si se utiliza más de 12V, el regulador de
voltaje se puede sobrecalentar y dañar la placa. El rango recomendado es de 7 a 12
voltios.
Los pines de alimentación son como sigue:
VIN. El voltaje de entrada a la placa Arduino cuando se trata de utilizar una fuente de
alimentación externa (en lugar de 5 voltios de la conexión USB u otra fuente de
alimentación regulada). Puede suministrar tensión través de este pin, o, si el suministro
de tensión mediante el conector de alimentación, el acceso por medio de este pin.
5V. Este pin como salida una 5V regulada desde el regulador en el tablero. El tablero
puede ser alimentado ya sea desde la toma de la corriente continua (7 - 12), el
conector USB (5V) o el pasador de VIN del tablero (7-12V). El suministro de tensión a
través de los 5V o 3.3V pins no pasa por el regulador, y puede dañar la placa. No
aconsejamos ella.
3V3. Un suministro de 3,3 voltios generados por el regulador a bordo. El drenaje actual
máximo es de 50 mA.
GND. Patillas de tierra.
TRABAJO PRÁCTICO Versión: Final
Página: 27 de 30
incluye un monitor de serie que permite que los datos de texto simples para ser
enviados hacia y desde el tablero. La LEDs RX y TX de la placa parpadearán cuando
los datos se transmiten a través de la ATmega8U2/ATmega16U2 conexión de chip y
USB al ordenador (pero no para la comunicación en serie en los pines 0 y 1)).
Una biblioteca SoftwareSerial permite la comunicación en serie en cualquiera de los
pines digitales del Mega2560.
El Atmega2560 también apoya TWI y la comunicación SPI. El software de Arduino
incluye una librería Wire para simplificar el uso del bus TWI, véase
la documentación para más detalles. Para la comunicación SPI, utilice la biblioteca de
SPI .
Programación
Los Mega Arduino puede ser programado con el software de Arduino ( descarga ). Para
obtener más información, consulte la referencia y tutoriales .
El ATmega2560 en el Arduino Mega preburned viene con un cargador de arranque que
le permite cargar nuevo código sin el uso de un programador de hardware externo. Se
comunica utilizando el protocolo STK500 original ( referencia ,archivos de cabecera C ).
También puede pasar por alto el gestor de arranque y el programa del micro
controlador a través del ICSP (programación en circuito serie) cabecea, ver las
instrucciones para más detalles.
El ATMEGA16U2 (o 8U2 en las tablas rev1 y rev2) código fuente del firmware está
disponible en el repositorio de Arduino .Él se carga ATMEGA16U2 / 8U2 con un
cargador de arranque DFU, que se puede activar a través de:
En Rev1 juntas: conectar el puente de soldadura en la parte posterior de la placa
(cerca del mapa de Italia) y luego reiniciar el 8U2.
En Rev2 o posteriores juntas: hay una resistencia que tirando de la línea HWB
8U2/16U2 a tierra, por lo que es más fácil de poner en modo DFU. A continuación,
puede utilizar el software FLIP de Atmel (Windows) o el programador DFU (Mac OS X y
Linux) para cargar un nuevo firmware. O puede utilizar el encabezado ISP con un
programador externo (sobrescribir el gestor de arranque DFU). Ver este tutorial
aportado por los usuarios para obtener más información.
Restablecimiento automático (Software)
En lugar de exigir una prensa físico del botón de reinicio antes de que una carga, el
Arduino Mega2560 está diseñado de una manera que le permite poner a cero por
software que se ejecuta en un ordenador conectado. Una de las líneas de control de
flujo de hardware (DTR) de la ATmega8U2 está conectado a la línea de puesta a cero
del ATmega2560 a través de un condensador de 100 nanofarad. Cuando se afirma
esta línea (tomado bajo), la línea de restablecimiento pasa el tiempo suficiente para
restablecer el chip. El software de Arduino utiliza esta capacidad que le permite cargar
código con sólo pulsar el botón de subida en el entorno Arduino. Esto significa que el
gestor de arranque puede tener un tiempo de espera más corto, como la reducción de
DTR puede ser bien coordinada con el inicio de la carga.
Esta configuración tiene otras implicaciones. Cuando el Mega2560 está conectado ya
sea a un ordenador con Mac OS X o Linux, se restablece cada vez que se realiza una
conexión a la misma desde el software (a través de USB). Para el siguiente medio
TRABAJO PRÁCTICO Versión: Final
Página: 29 de 30
Bibliografía
“Micro controladores PIC diseño practico de aplicaciones”, primera edición,
autores José Angulo Usategui Ignacio Angulo Martínez.
http://edrpaul.blogspot.com.ar/2011/10/libro-programando-microcontroladores-
en.html
http://axnm.galeon.com/
http://www.johnhenryshammer.com/WOW2/pagesHowTo/atmelPage.php#index
http://web.ing.puc.cl/~mtorrest/downloads/pic/tutorial_pic.pdf
http://prezi.com/xxee6cqfxdcc/historia-de-los-microcontroladores/
http://mycrocontroladores.blogspot.com.ar/2008/12/evolucion-del-
microcontrolador.html
http://www.slideshare.net/tecautind/introduccion-a-microcontroladores