Está en la página 1de 12

Nombre: Danan Elora Díaz Sánchez

Materia: laboratorio PRQ211

PRACTICA 1: Introducción a Arduino


1. Objetivos
 Entender ¿Qué es Arduino? Y ¿Cuál es su origen?
 Revisar las especificaciones técnicas de la Placa Arduino UNO
2. Fundamento Teórico
¿Qué es Arduino?
Arduino es una plataforma de prototipos electrónica de código abierto (open-source) basada en hardware y
software flexibles y fáciles de usar. Está pensado para artistas, diseñadores, como hobby y para cualquiera
interesado en crear objetos o entornos interactivos.
http://arduino.cl/que-es-arduino/

Arduino es en realidad tres cosas:


1. Una tarjeta de hardware abierto que incorpora un microcontrolador reprogramable y una
serie de pines (los cuales están unidos internamente a las patillas de E/S del
microcontrolador) que permiten conectar allí de forma muy sencilla y cómoda diferentes
sensores y actuadores.
2. Un software abierto (más en concreto, un IDE “Entorno de Desarrollo Integrado”), gratis y
multiplataforma (ya que funciona en Linux, MacOS y Windows) que se debe instalar en el
computador y que permite escribir, verificar y guardar (“cargar”) en la memoria del
microcontrolador de la placa Arduino el conjunto de instrucciones que se desea que este
empiece a ejecutar. Es decir: permite programarlo.
3. Un lenguaje de programación abierto. La tarjeta Arduino se programa con un lenguaje
de alto nivel denominado Processing, que en realidad no es nada más que el lenguaje C++
donde se han encapsulado varias funciones y librerías para hacerlo más sencillo de usar.

¿Cuál es el origen de Arduino?


Arduino nació en el año 2005 en el Instituto de Diseño Interactivo de Ivrea (Italia), centro
académico donde los estudiantes se dedicaban a experimentar con la interacción entre
humanos y diferentes dispositivos, muchos de ellos basados en microcontroladores. Arduino
apareció por la necesidad de contar con un dispositivo para utilizar en las aulas que fuera de
bajo coste, que funcionase bajo cualquier sistema operativo y que contase con documentación
adaptada a gente que quisiera empezar de cero.
La idea original fue, pues, fabricar la placa para uso interno de la escuela. No obstante, el
Instituto se vio obligado a cerrar sus puertas precisamente en 2005. Ante la perspectiva de
perder en el olvido todo el desarrollo del proyecto Arduino que se había ido llevando a cabo
durante aquel tiempo, se decidió liberarlo y abrirlo a “la comunidad” para que todo el mundo
tuviera la posibilidad de participar en la evolución del proyecto, proponer mejoras y sugerencias y
mantenerlo “vivo”. Y así ha sucedido: Arduino ha llegado a ser un proyecto de hardware y
software libre de ámbito mundial.
El principal responsable de la idea y diseño de Arduino, y la cabeza visible del proyecto es el
llamado “Arduino Team”, formado por Massimo Banzi (profesor en aquella época del Instituto
Ivrea), David Cuartielles (profesor de la Escuela de Artes y Comunicación de la Universidad de
Mälmo, Suecia), David Mellis (por aquel entonces estudiante en Ivrea y actualmente miembro
del grupo de investigación High- Low Tech del MIT Media Lab), Tom Igoe (profesor de la
Escuela de Arte Tisch de Nueva York), y Gianluca Martino (responsable de empresa
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211
fabricante de los prototipos de las placas).
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211
Tarjeta Arduino UNO
Existen varios tipos de placas Arduino, cada una con características específicas que hay que
conocer para poder elegir el modelo que más convenga según el caso. No obstante, existe un
modelo “estándar” de placa, que es el más utilizado: la tarjeta Arduino UNO. Desde que
apareció en 2010 ha sufrido tres revisiones, por lo que el modelo actual se suele llamar UNO
Rev3 o simplemente UNO R3.
Hardware y cable USB
El 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.

Especificaciones técnicas
Microcontrolador Primario ATmega328
Microcontrolador Secundario ATmega16
Voltaje de operación +5 V
Entrada de voltaje externo (VIN) 6-20 V
Entradas/Salidas Digitales 14
Entradas Analógicas o E/S Digital 6
Corriente DC para cada pin E/S 40 mA
Memoria de Código Flash ROM 32 KByte
Memoria de Datos SRAM 2 KByte
Memoria de Datos EEPROM 1 Kbyte
Conector ICSP 1
Frecuencia de Reloj 16 MHz
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211
Microcontrolador Primario
El microcontrolador que lleva la placa Arduino UNO es el modelo ATmega328 fabricado
actualmente por Microchip (después de la compra de Atmel por parte de Microchip) Pertenece
a la familia de microcontroladores AVR Mega
La figura muestra el patillaje del ATmega328P, que indica el pin de alimentación (“VCC”), los
dos pines de conexión a tierra (“GND”), los pines de E/S (señalados como puertos PBx, PCx o
PDx) y la existencia de otros pines más específicos como el AVCC (alimentación para el
convertidor analógico-digital) o el AREF (referencia analógica). También se puede observar
que junto al nombre de los pines de E/S se indica entre paréntesis las funciones
especializadas que cada uno de ellos tiene en particular.

Patillaje
ATMEGA328

Nota: Los números de pin del ATMEGA328 NO representan los números de pin en la
Placa Arduino

Microcontrolador Secundario
La conexión USB de la placa Arduino, además de servir como alimentación eléctrica, sobre
todo es un medio para poder transmitir datos entre el computador y la placa, y viceversa. Este
tráfico de información que se realiza entre ambos aparatos se logra a través del uso del
protocolo USB, un protocolo de tipo serie que el computador es capaz de entender y manejar.
No obstante, el protocolo USB es demasiado complejo para que el microcontrolador
ATmega328 pueda manejarlo por sí mismo. La placa Arduino UNO R3 dispone de un chip que
realiza esta función de “traductor” del protocolo USB a un protocolo Serie RS-232 más sencillo
(y viceversa). Ese chip es el ATmega16U2. El ATmega16U2 es un microcontrolador en sí
mismo con su propia CPU, con su propia memoria (16 Kilobytes de memoria ROM Flash) cuya
única función es traducir entre USB y RS-232.
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211
El firmware del ATmega16U2 viene pregrabado y no se puede modificar.
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211
Pines de alimentación
 VIN: se trata de la fuente tensión de entrada que contendrá la tensión a la que se
alimenta a la tarjeta Arduino mediante la fuente externa.
 5V: fuente de tensión regulada de +5V, esta tensión puede venir ya sea del pin VIN a
través de un regulador interno, o se suministra a través de USB o de otra fuente de +5V
regulada.
 3.3V: fuente de 3.3 voltios generados por el regulador interno con un consumo máximo
de corriente de 50mA.
 GND: pines de tierra.
Entradas/Salidas Digitales
 Pines 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13. Puertos de Entrada/Salida digital. Varios
de estos pines tienen funciones especializadas.
 Pin 0 (RX) y 1 (TX). Se utiliza para recibir (RX) y la transmisión (TX) de datos serie TTL.
 Pin 2 y 3. Entradas de Interrupciones externas.
 Pin 3, 5, 6, 9, 10 y 11. Salidas PWM (modulación por ancho de pulso).
 Pin 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pines del protocolo serial SPI.
 Pin 13. LED. Hay un LED incorporado y conectado al pin digital 13.
 Pin A0, A1, A2, A3, A4 y A5. Entradas analógicas o Puertos de Entrada/Salida digital

Entradas Analógicas
El Arduino posee 6 entradas analógicas, etiquetadas desde la A0 a A5. El conversor
Análogo/Digital el ATMEGA328 tiene una resolución de 10 bits. Es decir que los voltajes
análogos, en el rango de 0 volt a
+5 volt, se convertirán a valores digitales en el rango de 0 a 1023.
Estos 6 pines también pueden operar como puertos de Entrada/Salida digital.

Memoria de Código Flash ROM


Memoria persistente donde se almacena permanentemente el programa que ejecuta el
microcontrolador. En el caso del ATmega328P tiene una capacidad de 32KByte.
En los microcontroladores que vienen incluidos en la placa Arduino no se puede usar toda la
capacidad de la memoria Flash porque existen 512 bytes (el llamado “bootloader block”) ya
ocupados por un código pre-programado de fábrica (el llamado “bootloader” o “gestor de
arranque”), el cual permite usar la placa Arduino de una forma sencilla y cómoda sin tener que
conocer las interioridades electrónicas más avanzadas del microcontrolador.

El Bootloader del microcontrolador


Este software (también llamado “firmware”, porque es un tipo de software que raramente se
modifica) ocupa, en la placa Arduino UNO, 512 bytes de espacio en un apartado especial de
la memoria Flash, el llamado “bootloader block”.
La función de este firmware es gestionar de forma automática el proceso de grabación en la
memoria Flash del programa que se quiere que el microcontrolador ejecute. Lógicamente, el
bootloader realizará esta grabación más allá del “bootloader block” para no sobrescribirse a sí
mismo.
En la placa Arduino UNO, el bootloader siempre se ejecuta durante el primer segundo de cada
Reset. Durante esos instantes, el gestor de arranque se espera a recibir una serie de
instrucciones concretas de parte del entorno de desarrollo para interpretarlas y realizar la
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211
correspondiente carga de un posible programa. Si esas instrucciones no llegan pasado ese
tiempo, el bootloader termina su ejecución e igualmente se empieza a procesar lo que haya en
ese momento en la memoria Flash.
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211
Memoria de Datos SRAM
Memoria volátil donde se alojan los datos que en ese instante el programa necesita crear o
manipular para su correcto funcionamiento. Estos datos suelen tener un contenido variable a
lo largo del tiempo de ejecución del programa y cada uno es de un tipo concreto (es decir, un
dato puede contener un valor numérico entero, otro un número decimal, otro un valor de tipo
carácter, también pueden ser cadenas de texto fijas u otros tipos de datos más especiales).
Independientemente del tipo de dato, su valor siempre será eliminado cuando se deje de
alimentar eléctricamente al microcontrolador. En el caso del ATmega328P esta memoria tiene
una capacidad de 2KB.

Memoria EEPROM
Memoria persistente donde se almacenan datos que se desea que permanezcan grabados una
vez apagado el microcontrolador para poderlos usar posteriormente en siguientes reinicios. En
el caso del ATmega328P esta memoria tiene una capacidad de 1 KB, por lo que se puede
entender como una tabla de 1024 posiciones de un byte cada una.

El conector ICSP
La sigla ICSP (“In Circuit Serial Programming”) se refiere a un método para programar
directamente microcontroladores de tipo AVR y PIC. Se sabe que la función de un bootloader
es permitir cargar nuestros programas al microcontrolador conectando la placa a nuestro
computador mediante un simple cable USB estándar, pero si ese microcontrolador no tiene
grabado ningún bootloader, la escritura de su memoria no se puede realizar de esta forma tan
sencilla y debemos utilizar otros métodos, como el ICSP.

El reloj
Marca el ritmo de la ejecución de las instrucciones en el microcontrolador, la lectura y escritura
de los datos en la memoria, la adquisición de datos en los pines de entrada y el envío de
datos hacia los pines de salidas. La placa Arduino posee un reloj a una frecuencia de 16
millones de hercios (16MHz).

3. Informe de laboratorio:

1. TRABAJO DE INVESTIGACIÓN
2. Modelos de Placas ARDUINO
 Arduino Mega
 Arduino Nano
 Arduino LilyPad
 Arduino Due
 Arduino Zero
 Arduino Yun
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211

Ardu1no
Estructura y
flujo UNO Funciones
inclufdas S
e
Bibliotecas

Operadore r
Estructura b eIca del
pregrama i
e
s
Operadoms ynerales
void ua*up ) t ope rador de as igna c?6n} bagTn ( [ 300, T 200, 2 4 00, 4 800,
/ / Corre una ver ciJanQo e1 t t adâe i6n J - su st ra oo 960 0, 1 4 4 00, 1 920 0, 28800,
/ / g t og rna In T cza 6n } 38'10 0, 57600, 115 200 ] )
• I mu It ip1 ca e i6n } / /Puede eer eua tqu her n Anne
/ /Ese r ibe HIGH en en I radas
ro
para
se ejvvvta igua1 aJ != des
igua1 / / near los pu I - u pe a BAOO, aA1r o)
aJ
repvtiaame t
< t meno r 9ue } > ria
yo r que J
EstruMura4 de control <- lgua1 o prénfi (rn is
meno r que W Dadoe ) pslne2n
mayo r o igua1 tmi s Da tos )
queJ veil t mi4 Byee
s
Advanced lfO TiJmes aieatorios
Operadoree eompueetos s•ridom8••d semi11a } / / long 6 int zzeRom (,v‹i,ae
-i-r i n e r eme nc o
-- t dee r eme nc o}
t I e uma c omp ue sta ) zrzox+›) ogre
xa,anxernal
evitcn tmi —- I re sta c ompue sta } cor›• pin , t re qti z ) ver W dir I n ce rna , mi Byte )
I ad ie
Vra J{ •- I no I i p1* ca c?6n compue sta ) Hri• pin, t reqh z , aura e ion ms }
caee l /- t dJ v is i6n c ompues ta J a# and I p i n J
•c J / / r e g re s a bo1e
: c- tAND b i n ar i o eompues co i enlfeou e{ptn Da t os , p? nne to j , ano
} - l0R bi na r * o a owe ue z to l !usari nsi, iseri nsz , va i or j
b u n s ? 9ne d 1 on9
pu1o•$r› I pin, [
read ; Operadores a nlvel de bit Jj j9 p 5 p]
case 8 G {MO to1 n ar za ) | {OTt b i
: n ar Ta )

brea
k;
deIau
1c :
/
m cusn x ; / / o ”r e euzn ; ” p >> ‹dev iaami t a ia ae
ar a va e i os /desbordamient
e na) o en 50 dhas
unsTgned Long
z+i crow T )
/ /de sbo cQa>T en t a en g 0 oTnu cos
‹+i iuae ‹ oitw
eseriaitw
Sqm t long vetoe i dadj /
/has ta 9 600 erar ›••a i
/ / e s pe ra 1os da tos
pcln* («i T»Da
Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211

3. TRABAJO DE LABORATORIO PROTEUS 8 PROFESIONAL


Nombre: Danan Elora Díaz Sánchez
Materia: laboratorio PRQ211

También podría gustarte