Arduino Practicas
Arduino Practicas
Sensores y Actuadores
video sensores y video actuadores
Un sensor es un dispositivo, también conocido como transductor, que puede medir un dato del entorno
para digitalizarlo para transferirla a un ordenador.
Los sensores pueden medir cualquier variable del entorno, desde la temperatura hasta la humedad,
pasando por la presencia de personas o el tipo de objeto que alguien sujeta en su mano.
Los actuadores son dispositivos electrónicos, transductores, que pueden afectar el entorno
transformando un valor digital en un movimiento mecánico, la producción de sonido, un cambio de
temperatura, o de intensidad de la luz.
Ejemplos de actuadores, son motores, led, altavoces, etc,
1
IES NICOLAS COPERNICO Arduino
Arduino puede "sentir" el entorno mediante la recepción de entradas desde una variedad de sensores y
puede afectar a su alrededor mediante el control de luces, motores y otros artefactos.
La placa Arduino UNO es la más empleada en el mundo en educación en este momento. Fue diseñada
para ser robusta y soportar toda una serie de situacioines de uso con estudiantes.
La placa incluye, entre otras cosas:
El IDE permite escribir programas, compilarlos, descargarlos en placas y hacer una gestión simple de
ficheros. El 90% de las actividades que necesitas hacer cuando creas programas para Arduino están
representadas en la barra de tareas.
2
IES NICOLAS COPERNICO Arduino
• New (nuevo): crea un nuevo programa, si tenías algo escrito en el editor, te dará la posibilidad
de guardarlo antes de crear uno nuevo.
• Open (abrir): abre un buscador de ficheros para que le indiques que programa quieres abrir. Los
programas de Arduino tienen la extensión *.ino.
• Save (guardar): te permite guardar tu programa donde quieras en tu disco duro, unidad USB,
disco de red, etc.
• Serial monitor (monitor puerto serie): es una ventana de diálogo que te permite comunicar con el
puerto de comunicación de tu placa Arduino, veremos más sobre esto al final de módulo.
Cada vez que apliquemos un nivel alto (high) a la pata 13 el led se encenderá y cuando apliquemos un
nivel bajo (low) se apagará. Recordamos que un nivel significa que aplico voltaje a esa pata.
Empecemos.
La primera vez que conectemos Arduino Windows instará el controlador del dispositivo.
3º - Seleccionamos el puerto apropiado donde hemos conectado el cable USB al PC. En Windows
será un puerto COM, si hay varios normalmente será el más alto. Menú herramientas / Puertos.
4º - Escribimos el programa.
(normalmente los puntos 2 y 3 solo se realizarán la primera vez que conectemos la placa, pero si al subir el
programa me da un error, volverlo a comprobar)
3
IES NICOLAS COPERNICO Arduino
El programa.
Todo lo que escribamos entre /* y */ , es un comentario de varias líneas, no son instrucciones y es solo
para que el desarrollador o usuarios tengan información adicional.
//es también un comentario pero solo de una líneas, se utiliza para comentar una instrucción. Como
ayuda.
Todas las instrucciones tiene una estructura fija, es decir, no puedo omitir nada, ni paréntesis, ni puntos
y comas ni llaves etc. Además es sensible a las mayúsculas, es decir si una instrucción o parte de es en
mayúsculas no funcionará en minúsculas.
El IDE, cuenta con una gran ayuda: la sintaxis coloreada, esto significa que cuando reconoce algo que
está escrito de forma correcta le asigna un color determinado..
4
IES NICOLAS COPERNICO Arduino
Es importante que todo programa tenga únicamente una función setup() y una función loop().
int led = 13; - Definimos una variable para el número de pin. Esto es habitual en cualquier
programa, de esta forma cuando nos vayamos a referir al pin nº 13 utilizaremos la variable "led", que nos
da más información que un simple número.
5
IES NICOLAS COPERNICO Arduino
Una Variable es una palabra que representa un espacio de memoria donde hay almacenado un dato.
Ese dato almacenado puede modificarse durante la ejecución del programa.
String cadena = "hola"; - tipo String: cadena de texto se pone entre comillas.
La estructura es la que se muestra, primero el tipo, luego el nombre y después del igual es el valor que
tiene dicha variable de inicio. Luego ese valor podría ser modificado durante la ejecución del programa.
pinMode (led, OUTPUT); - Asigna un pin de la placa como entrada (input) o salida
(output), según vayamos a utilizarlo. En este caso como lo que queremos es aplicar voltaje, será una
salida.
digitalWrite (led, HIGH); - Asigna un nivel alto (HIGH) o bajo (LOW) a una entrada.
- Compila y sube el programa a la placa (USB conectado) dos leds marcados con Tx y Rx en la
placa parpadearán durante la transmisión.
Abrir el IDE, y copiar el programa Blink de la figura anterior. Las instrucciones tienen que estar
exactamente igual. Subir el programa a Arduino y comprobar el resultado.
6
IES NICOLAS COPERNICO Arduino
Un ejemplo de dispositivo de entrada sería un simple pulsador. En la tabla vemos los términos
equivalentes para encendido y apagado.
ON OFF
5V 0V
HIGH LOW
1 0
TRUE FALSE
Arduino tiene 14 entradas y salidas digitales, pero tener en cuenta que las entradas 0 y 1 se utilizan
para la comunicación con el puerto serie, por tanto cuando queramos utilizar está comunicación no es
conveniente utilizarlas.
Además si fuera necesario las entradas analógicas también podrían utilizarse como digitales, A0 seria la
14, A1 la 15... y así sucesivamente. Por tanto podríamos disponer de un total de 20 entradas digitales.
7
IES NICOLAS COPERNICO Arduino
Abre el programa Blink, de la práctica 1 y modifica el 13 por el 2, puesto que en esta ocasión es la
entrada digital donde hemos conectado el LED.
Ep 2. Igual que hicimos con Blink, modifica el programa para que el parpadeo sea cada
medio segundo.
Ep 3. Podemos hacer que emita destellos, haciendo que el tiempo de encendido sea más
corto que el de apagado. Por ejemplo que el tiempo de encendido sea 5 veces menos.
8
IES NICOLAS COPERNICO Arduino
En programación por norma general utilizamos mayúsculas para los nombres de variables y constantes.
Ep 4. Podemos cambiar el tiempo de espera para ver el efecto como en Blink. Sería
interesante puesto que el retardo aparece varias veces en el programa, definir una
constante, de esta forma si la queremos cambiar solo lo hacemos una vez.
delay(ESPERA);
El ejercicio consiste en hacer parpadear un LED (como hemos visto). Cuando el pulsador no esté
pulsado parpadeará a una velocidad y cuando lo pulse parpadeará más rápido.
El programa es el siguiente.
10
IES NICOLAS COPERNICO Arduino
11
IES NICOLAS COPERNICO Arduino
digitalRead (pin entrada) - nos permite leer el valor de una entrada digital. Los valores leídos
pueden ser HIGH ó LOW, que son los equivalentes de true y false ó a "1" y "0".
else
}
Sentencia condicional para la toma de decisiones. Si (if) se cumple (true) se ejecutarán las acciones
correspondientes, si no se cumple (false) se ejecutarán las instrucciones dentro del "else"
Ep 6. Se trata de que el LED siga al estado del pulsador. El LED se encienda cuando esté
pulsado y se apague cuando no.
Pista: si utilizas la función delay es que estás haciendo algo mal.
Practica 5. El semáforo
En esta práctica vamos a simular el funcionamiento de un semáforo de forma simplificada.
El semáforo simula el funcionamiento de un paso de peatones. Las luces del semáforo representarían la
parte que controla la circulación de los vehículos, y el pulsador el botón que tiene que apretar el peatón,
para que se cierre el semáforo de los coches y poder cruzar.
Primero encenderemos los tres LEDS un segundo y los apagamos, para comprobar que todos
funcionan.
Después se encenderá el LED Verde y el sistema quedará a la espera de que se pulse el pulsador.
Cuando lo pulsemos se apagará el LED verde y el LED amarillo parpadeará 5 veces.
Para terminar, el LED rojo se encenderá durante 5 segundos y después se encenderá el LED verde,
quedando nuevamente a la espera del pulsador.
12
IES NICOLAS COPERNICO Arduino
Vamos a utilizar esta vez el montaje pull-down para ver la diferencia y que con cualquiera de los dos
puede funcionar, simplemente tengo que tenerlo en cuenta en la programación.
El circuito es el de la siguiente figura. Pin 2 como entrada digital para el pulsador. Pines 8, 9 y 10 como
salidas digitales para los LED.
13
IES NICOLAS COPERNICO Arduino
14
IES NICOLAS COPERNICO Arduino
Podemos crear tantas variables como queramos, la única limitación es la cantidad de memoria RAM
disponible en el microcontrolador. Por convenio utilizamos mayúsculas para definir las constantes con
#define y minúsculas para las variables, esto nos permitirá cometer menos errores.
Bucle while
Permite ejecutar una parte del programa mientras una condición se está dando. La interpretación del
bucle while es diferente dependiendo de si ponemos punto y coma al final o no.
while (condición);
Bucle while que ejecuta un fragmento (entre llave) de programa mientras se da una condición:
while (condición)
En nuestro ejemplo utilizamos el primer tipo (con punto y coma) porque sin accionar el pulsador tenemos
aplicado a la entrada nº 2 un nivel bajo (GND), ya que estamos utilizando un montaje pull_down, es decir
PULSADOR = FALSE. Así, el while hace que el programa espere a que deje de cumplirse esa
condición, y eso sucederá cuando accione el pulsador aplicando un nivel alto (5V).
Bucle for
El bucle while se ejecuta un número indeterminado de veces, mientras se da una determinada
condición, tal y como hemos visto.
Por contra, el bucle for se ejecuta un número concreto de veces. Para controlar el número de veces que
se ejecuta el bucle for, necesitamos una variable que nos permita contarlas. Esta es la variable "x".
El primer parámetro es el valor inicial que toma la variable, el segundo parámetro la condición final para
salir del bucle, y el tercer parámetro es en cuanto incrementamos la variable en cada iteración.
En nuestro ejemplo se leería como: se ejecuta desde "x" con valor cero mientras "x" sea menos de 5,
incrementando "x" de uno en uno, cada vez que se repite. (incrementar una unidad se expresa: x++,
decrementar una unidad x--)
15
IES NICOLAS COPERNICO Arduino
Tienes que mejorar este semáforo, para ello vamos a poner dos LEDs adicionales (rojo y
verde), con sus respectivas resistencias, que representen las luces del semáforo que
regulan el paso de los peatones.
Modifica también el programa para que estos dos nuevos LEDs se enciendan y apaguen
como lo harían las luces del semáforo que regulan el paso de los peatones.
La primera parte del problema parece sencilla, solo hay que leer el valor proporcionado por el
potenciómetro, pero ¿qué hacemos con él? ¿cómo podemos visualizarla?
Lo que vamos a hacer es visualizarla en el propio ordenador en el que está conectado la placa Arduino,
para ello vamos a aprender a enviar información por el puerto serie (USB) hacia el ordenador y
visualizarla.
16
IES NICOLAS COPERNICO Arduino
El número de valores distintos que puede distinguir una entrada analógica está determinada por el
número de bits del convertidor Analógico/Digital que se encuentra en el interior del microcontrolador de
la placa Arduino.
En este caso concreto es un convertidor A/D de 10 bits por tanto el número de valores está determinado
por:
El potenciómetro funciona como un divisor resistivo variable, así estaremos variando el voltaje entre 0 y
5 V. Lectura 0 corresponde a 0 V y lectura 1023 a 5V.
Para calcular el voltaje que corresponde a cada lectura del convertidor aplicamos la siguiente expresión.
Para poder almacenar los datos con decimales tenemos que utilizar variables tipo float.
Cerca de la entra USB hay unos LEDs marcados con TX y RX que monitorizan la comunicación entre
Arduino y ordenador.
Una vez cargado el programa vemos que el TX se queda parpadeando (en prácticas anteriores no
pasaba), esto es porque está enviando información al ordenador.
Para poder visualizar estos datos, hay que abrir una pequeña ventana en el ordenador que se comporta
18
IES NICOLAS COPERNICO Arduino
En la parte inferior derecha de la ventana se muestra la velocidad de comunicación: 9600 baudios. Este
número tiene que coincidir con el valor que pusimos en la función Serial.begin en el programa.
analogRead (nº pin entrada) - para leer un valor desde una entrada analógica.
Serial.print ("texto") - envía por el puerto serie lo que se ponga entre los paréntesis. Si es texto
tiene que ir entre comillas. No cambia de línea.
19
IES NICOLAS COPERNICO Arduino
Por ejemplo, vamos a calcular e voltaje de una medida analógica mediante un programa para Arduino.
En el ejemplo solo vamos a poner las partes representativas, no el programa completo.
float valor_voltios;
valor_voltios= (5.0/1024.0)*analogRead(POT);
al poner 5.0 y 1024.0 estamos diciendo al programa que trate a estos valores como decimales.
Ep 8. Vamos a modificar el programa de esta actividad para que muestre el valor de voltios
de la entrada analógica donde está conectado el potenciómetro. Algo así como:
"La medida es: 2.37 V" Prácticamente ya está hecho en el apartado anterior.
20
IES NICOLAS COPERNICO Arduino
Una salida PWM permite controlar la energía que aplica al actuador (un LED en nuestro caso),
regulando el tiempo que dicha salida permanece activa. Veamos el siguiente gráfico.
21
IES NICOLAS COPERNICO Arduino
Si hacemos esto lo suficientemente rápido tenemos un efecto equivalente a que un LED brilla la mitad, o
un motor gira a un cuarto de su velocidad máxima.
Seis salidas digitales 3, 5, 6, 9, 10 y 11, de la placa Arduino UNO (las que empiezan con el símbolo ∼)
tienen capacidad de actuar como salidas PWM.
El programa es el siguiente.
analogWrite (pin, valor) - controla la salida de los pines digitales PWM (3, 5, 6, 9, 10 y 11)
No necesita configurar el pin en modo alguno (INPUT, OUTPUT), es por eso que no hemos utilizado en
el ejemplo la función pinMode para la salida 6.
pin: número del pin digital con soporte PWM (en nuestro ejemplo el 6)
valor: es un número comprendido entre 0 y 255, donde 0 representa siempre apagado y 255 siempre
encendido. Así por ejemplo un valor de 127 representaría una señal con el 50% del tiempo encendido y
el resto apagada.
22
IES NICOLAS COPERNICO Arduino
Función map()
Como hemos visto la función analogWrite tiene un rango de funcionamiento de 0 a 255. Desde el punto
de vista humano sería mejor hablar de 0 al 100% (aunque se pierda algo de resolución).
Este tipo de situaciones es bastante frecuente. Por ejemplo ya hemos visto que en las entradas
analógicas (como el potenciometro) el rango de medida es de 0 a 1023, cuando en realidad representa
de 0 a 5 V.
En definitiva, en los programas suele ser bastante habitual tener que realizar cambios de un rango a
otro.
En esta práctica hemos utilizado la función map para ajustar el rango de la entrada analógica (0-1023)
con el rango de la salida PWM (0-255).
Cuando el cursor del potenciómetro esté a la mitad, la salida PWM estará proporcionando una señal que
estará el 50% del tiempo activa, y esto sucederá de forma proporcional para cualquier posición del
cursor.
23
IES NICOLAS COPERNICO Arduino
Ep 10. Modifica el programa para que además de controlar el brillo del LED visualice en la
pantalla del ordenador los valores medidos y enviados a la salida PWM.
El circuito a montar es el siguiente. Una LDR en serie con una resistencia (en nuestro caso de 4K7).
24
IES NICOLAS COPERNICO Arduino
Analicemos el circuito.
25
IES NICOLAS COPERNICO Arduino
26
IES NICOLAS COPERNICO Arduino
Ep 11. Mapea el valor leído como hicimos en la práctica anterior para obtener el tanto por
ciento de luminosidad detectado. Es decir máxima luz será 100% que corresponderá con
una lectura de 1023 y la mínima del 0% que corresponderá con una lectura de 0. El
mensaje se tiene que mostrar de la siguiente manera.
Ep 12. Añadir un led con su resistencia al circuito y conéctalo cualquiera de las entradas
digitales. El LED se encenderá cuando el nivel de luz esté por debajo del 30%.
Esta solución podría ser el programa que implementa el encendido automático de las
farolas.
En este ejercicio tienes que quitar la parte referente al envío de información al ordenador.
Ep 13. Vamos a utilizar 3 LEDs (rojo, verde y amarillo) con sus resistencias de 330 Ω. Se
encenderán según la siguiente tabla.
Cada nota musical se corresponde con una frecuencia concreta, así una melodía simple puede ser una
sucesión de sonidos de una determinada frecuencia y duración. Esto es lo que vamos a hacer.
Para poder asociar a cada frecuencia su duración vamos a utilizar un sistema de almacenamiento
nuevo, el array. Que explicaremos más adelante.
Vamos a empezar por algo muy simple, realizar un programa que sea capaz de atacar un altavoz (un
zumbador en nuestro caso) en serie con un resistencia de 100 Ω, para reproducir sonido directamente
desde el chip. No será un archivo wav o mp3, si no que vamos a generar sonido directamente desde
código.
Primero vamos a conectar el altavoz a través de la resistencia a una de las entradas digitales, por
ejemplo la 4. Conectamos el cable azul o negro a tierra (GND) y el rojo al pin 4.
27
IES NICOLAS COPERNICO Arduino
Podemos partir del ejercicio Blink de la primera práctica. Borrar todos los comentarios y cambiar el
nombre de la variable "led" por "speaker". Funcionaría igual sin cambiar el nombre de la variable, pero
siempre es recomendable utilizar nombres de variables que tengan que ver con lo que estamos
haciendo. Y también cambiar la número de pin digital.
Es programa emitirá un tono cada medio segundo. Como ves no hemos utilizado la función tone,
simplemente utilizamos el altavoz como cualquier otro actuador de los que hemos visto anteriormente.
Modificar el retardo a 2 milisegundos y comprobaréis que se obtiene un tono más grave. Jugando con el
retardo obtenemos distintos tonos.
delayMicroseconds (); esta función me proporciona mil veces más resolución que delay().
si en nuestro ejemplo utilizamos esta función con un retardo de 1136, reproduciremos la nota LA.
Probarlo.
28
IES NICOLAS COPERNICO Arduino
Vamos a ver cómo trabajar con tonos directamente sin tener que trabajar con retardos que es más
intuitivo.
tone (pin, frec); - esta función tiene dos parámetros el pin que voy a activar y la frecuencia a
tocar.
tone (pin, frec, dur); - puedo añadir un tercer parámetro que es la duración de la nota.
Practica 9_2.
El IDE tiene la posibilidad de añadir nuevas pestañas en las que repartir el código de forma elegante.
29
IES NICOLAS COPERNICO Arduino
Pruébalo. Simplemente incluye la instrucción anterior al principio del programa y cambia los números de
frecuencia por su nombre correspondiente en la pestaña "pitches.h". Por ejemplo, en lugar de 440 por
NOTE_A4.
Al principio del tema vimos que existen distintos tipos de variables (byte, int, long, float, string, char,
boolean)
Un Array que es un conjunto de variables (posiciones de memoria) del mismo tipo. La estructura es la
siguiente.
30
IES NICOLAS COPERNICO Arduino
si escribo:
31
IES NICOLAS COPERNICO Arduino
El bucle for es una estructura que se utiliza cuando queremos que una serie de acciones se repita un
número determinado de veces, para ello se necesita de una variable índice, una condición y un
incrementador.
Vamos a ver esto con un ejemplo real. Abrimos Archivo / Ejemplos / Digital / toneMelody este ejemplo es
capaz de tocar una melodía.
Observa que nosotros nos utilizamos el pin de salida número 8. Cámbialo por el nuestro.
Primero observa que la primera sentencia de programa es #include "pitches.h" , para poder utilizar las
definiciones de notas creadas en esa pestaña.
Estamos definiendo una Array de enteros (int) con el nombre "melody". Los corchetes [ ] , indican que es
un Array. Dentro de las llaves { } , y separados por comas, introducimos el valor inicial de las diferentes
variables, que serán las notas a tocar ( el cero es un silencio). En este caso tiene 8 notas.
32
IES NICOLAS COPERNICO Arduino
Para ir tocando la melodía tenemos que ir seleccionando cada posición del Array, por ejemplo,
melody[0] = NOTE_C4
melody[1]= NOTE_G3
...
melody[8]=NOTE_C4
En el ejemplo también hemos definido otro Array para las duraciones de las notas.
En nuestro ejercicio como queremos pasar por todas las notas contaremos hasta 8 en incrementos de 1.
Hemos creado una variable "thisNote" que inicializamos a 0 y que incrementamos con la sentencia
"thisNote++"
La duración podemos considerar 1 segundo (1000 milisegundos) divido por la duración, así sería un
cuarto de nota (1000/4) un octavo de nota (1000/8), y así....
El programa está definido en el setup() por lo que sonará solo una vez. Para que vuelva a sonar
tendremos que pulsar el botón de reset.
Ep 14. Prueba esta melodía, y haz los ajustes necesarios para que funciones
Ep 15. Melodía del primer Mario Bross. Haz los ajustes necesarios para que funcione.
Nosotros vamos a hacer un Thermin simplificado. Utilizaremos el circuito anterior al que añadiremos una
LDR y su resistencia. Este sensor nos detectará la posición de nuestras manos y según esta reproducirá
un sonido u otro. En realidad solo conseguiremos que reproduzca un sonido diferente cuando lo
toquemos (poca luz)
34
IES NICOLAS COPERNICO Arduino
El circuito es el de la figura.
Como podemos ver tenemos dos circuitos diferentes un formado por la LDR y su resistencia que nos
proporcionará la distancia entre la mano y el LDR (instrumento en este caso).
El programa es el siguiente.
35
IES NICOLAS COPERNICO Arduino
Un MOSFET es un transistor de potencia, permite a nuestro Arduino manejar voltages o cargas mas elevadas que las
normalmente soportadas por las salidas de la placa.
Este transistor puede manejar corrientes de hasta 30A y voltajes de hasta 100v
El circuito es el siguiente
Vamos a controlar el encendido y la potencia de una "carga más potente" que simularemos con tres
LEDs blancos. Para hacerlo un poco más complicado (si no sería igual que una de las actividades que
hicimos al principio), vamos a controlar el encendido y apagado del conjunto de LEDs de forma
progresiva. Para ello utilizaremos las salidas PWM, vistas en la práctica 7, pero en lugar de utilizar un
potenciómetro lo haremos mediante secuencias de encendido y apagado incluidas en nuestro programa.
36
IES NICOLAS COPERNICO Arduino
Ep 17. Tienes que controlar el brillo de los LEDs de forma inversa a la luz detectada por
un LDR. Utilizaremos el mismo circuito pero hay que añadir una LDR con su resistencia (
práctica 8), además habrá que modificar el programa.
37
IES NICOLAS COPERNICO Arduino
Si ahora probamos a conectar el motor a una salida digital veremos que ya no funciona, por que las
salidas digitales no entregan tanta corriente. Puedes probarlo con el programa de la práctica 1,
conectando el motor entre GND y la pin 2 (salida digital).
Por tanto necesitamos amplificar la corriente para poder entregar más al motor. ¿Cómo lo hacemos?
Efectivamente con un transistor.
En la práctica anterior (práctica 11) podemos sustituir los diodos y resistencias por el motor, es decir, un
contacto a 5 V y el otro al terminal D del transistor.
Compruébalo.
El display que vamos a utilizar es en cátodo común y vamos a poner unas resistencias de 330 ohmios para proteger cada
uno de los LEDs correspondientes a los segmentos del Display.
Para simplificarlo, en lugar de poner una resistencia por cada segmento, vamos a poner una sola conectada entre el
terminal GND del display y masa en al protoboard.
Cada uno de los segmentos los conectaremos a una salida digital de Arduino.
El montaje será el de la siguiente figura, pero ten en cuenta que el display de la figura no es el mismo que
vamos a utilizar nosotros. Fíjate en el patillaje (figura anterior).
38
IES NICOLAS COPERNICO Arduino
El programa es muy simple. Define los pines, luego configura como "salida" los terminales donde has conectado los
segmentos del display.
utilizando la instrucción digitalWrite, hay que poner a nivel alto, los pines correspondientes a los segmentos que se tienen
que encender con cada número. Deja un retarde de medio segundo entre número y número.
ejemplo: para mostrar "0": Todos a HIGH, excepto el segmento g que será LOW.
39
IES NICOLAS COPERNICO Arduino
Ep 18. Al mismo circuito anterior, vamos a añadir dos pulsadores con sus resistencias en
pull-down (ver práctica 4). Estos pulsadores se conectarán a dos entradas digitales. El
programa se tiene que comportar de la siguiente forma:
0 0 0 0 1111110 0
0 0 0 1 0110000 1
0 0 1 0 1101101 2
0 0 1 1 1111001 3
0 1 0 0 0110011 4
0 1 0 1 1011011 5
0 1 1 0 0011111 6
0 1 1 1 1110000 7
1 0 0 0 1111111 8
1 0 0 1 1110011 9
40
IES NICOLAS COPERNICO Arduino
Observar que en la foto aparece una resistencia por cada segmento, pero podemos dejar una única resistencia conectada
a GND, como hicimos en la práctica anterior.
INTÉNTALO
41