Tutorial Arduino - Ejemplo Semáforo - OpenWebinars
Tutorial Arduino - Ejemplo Semáforo - OpenWebinars
|||
Inicio | Blog | Tecnología | Robótica y Hardware
ROBÓTICA Y HARDWARE
Fernando Martínez
Publicado el 18 de marzo de 2015 Lectura 4 minutos
Compartir
Tabla de contenidos
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 1/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
En este nuevo post daremos unas pautas sobre cómo debe estructurar un
programa en Arduino, también veremos cómo son las sentencias básicas
usadas con esta IDE, cómo cargar nuestro programa a la placa y para finalizar,
realizaremos un ejemplo con el que encenderemos leds con Arduino montando
nuestro propio semáforo. Aprovecho para recomendarte que comiences nuestro
Curso de Arduino para avanzar más en este apasionante mundo.
Estructura básica de los códigos
Un código Arduino es una serie de comandos de programación que le dirán a
nuestro microcontrolador como configurarse al iniciarse y qué acciones tiene
que realizar mientras esté en funcionamiento. Estos comandos utilizados en
Arduino son sentencias muy fáciles e intuitivas.
El bloque de código debe tener 2 partes, o funciones principales, que siempre
debemos incluir.
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 2/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
Existen otras partes del código que no son obligatorias pero que podemos
necesitar, según el código lo requiera, para organizarlo todo.
Estas zonas pueden ser un espacio para el título, el autor, librerías, definiciones
(variables que vayamos a usar en el programa), una zona para funciones a las
que el programa irá llamando…Cada uno es libre de organizarlo como quiera,
pero cuanto más ordenado esté todo, más difícil será perdernos cuando los
códigos se compliquen.
Abajo podemos ver un ejemplo simple de cómo debe estructurarse un código.
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 4/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
Cómo debe estructurarse un código
Sentencias básicas, funciones y librerías
Para poder realizar un código Arduino debemos tener las herramientas con las
que decirle a nuestro microcontrolador que es lo que debe hacer en cada
momento. Estas herramientas son las sentencias y funciones .
Arduino usa una serie de sentencias y comandos básicos muy sencillitos pero a
la vez muy potentes. Combinándolos crearemos programas para decirle a
nuestra placa que haga prácticamente cualquier cosa que queramos.
Las sentencias se dividen por su manera de funcionar dentro del programa,
pudiendo dividirlas en 3 grandes grupos:
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 5/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
programa qué camino debe seguir el código al ejecutarse y qué
operaciones debe hacer. Algún ejemplo de las más usadas son if, for, while,
+, -, =, *, /, ==, >, < …
Variables : Con éstas definiremos qué tipo y qué características tendrán los
valores que vamos a usar en el código. Pueden ser números, caracteres o
estados. Podemos encontrarnos aquí las sentencias int, float, HIGH, LOW,
char, string, true, false…
Funciones : Nos permiten realizar una serie de operaciones concretas y
volver a la zona del código en la que se ejecutó. Existen funciones que
están propiamente definidas ya por Arduino como tales y también podemos
crearnos nuestras propias funciones para que sean llamadas en las zonas
de setup o loop cuando lo necesitemos. Son muy útiles cuando
necesitamos realizar un grupo de acciones varias veces en distintas zonas
del código. También es una buena forma de ahorrar líneas y de organizarse.
Ejemplo de funciones tenemos pinMode, digitalWrite, delay, max, sin, cos,
analogWrite…
Como explicar qué acción concreta realiza cada sentencia o función sería muy
extenso, os dejamos este enlace para que podáis consultarlos. Nosotros iremos
comentando todos los que vayamos usando en nuestros ejemplos.
Otra cosa importante son las librerías . Son una serie de sentencias y funciones
específicas de cada elemento o shield que conectemos a Arduino, que no están
dentro de las propias de la IDE, y que realizarán acciones específicas de cada
uno facilitándonos mucho la programación.
Por último nombraremos un par de pequeños detalles necesarios para poder
programar nuestro código. Para que cada sentencia o función se ejecute debe
llevar al final de cada orden el signo de puntuación punto y coma “ ; “ y al utilizar
la doble barra “ // ” le decimos al código que lo que se escriba a la derecha es
un comentario y que no debe ejecutarlo (Arduino lo coloreará en gris). Esto
veréis que es muy útil para explicar que estamos haciendo en cada momento.
Compilación y carga.
Una vez que hayamos escrito nuestro código en la IDE Arduino procederemos a
verificar que está correctamente escrito. Para ello pulsamos el botón
arriba a la izquierda. Arduino leerá el texto y nos dirá si es correcto o no. Para
ello lo que hará será compilarlo, que significa traducir el código del lenguaje de
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 6/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
En el caso de contener un error nos aparecerá en la consola una explicación
orientativa del error.
Verificando el código
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 7/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
Código correcto
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 8/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
Error en el código. Falta un ";"
Si la compilación ha sido correcta, ya podremos cargar nuestro programa al
Arduino. Para ello, con la placa conectada por USB, pulsamos el botón de carga
y esperamos a que termine.
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 9/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
Carga de programa terminada
Ejemplo: Semáforo
Como primer proyecto, realizaremos un semáforo con unos Leds. Es ideal para
iniciarnos en la programación y el montaje de circuitos porque, como veréis, es
muy fácil.
Empezaremos nuestro primer proyecto describiendo los elementos que vamos a
necesitar.
1 x Arduino UNO R3
1 x Protoboard
1 x Led rojo 3mm
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 10/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
3 x resistencias de 220Ω.
Cables para conectar todo.
Una vez que tenemos todo, hacemos nuestro montaje siguiendo el siguiente
esquema.
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 11/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
Protoboard del proyecto semáforo Una vez montado, abriremos nuestro IDE
Arduino y escribiremos el programa ( sketch ).
/*************/
/* SEMAFORO */
/*************/
void setup() {
pinMode(verde,OUTPUT); //declaramos el pin verde como salida
pinMode(amarillo,OUTPUT);//declaramos el pin amarillo como salid
pinMode(rojo,OUTPUT); //declaramos el pin rojo como salida
}
void loop() {
digitalWrite(verde,HIGH); //encendemos el led rojo
delay(2000); //esperamos 2 segundos
digitalWrite(verde,LOW); //apagamos el led rojo
delay(500); //esperamos medio segundo
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 12/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
digitalWrite(amarillo,LOW); //apagamos el led amarillo
delay(500); //esperamos medio segundo
Con la sentencia int estamos declarando una variable numérica entera, para
poderla usar después en nuestro código.
El comando delay hace que el programa pare un tiempo determinado. Éste lo
definiremos, en milisegundos, dentro de los paréntesis.
Las funciones pinMode y digitalWrite se explicarán en el siguiente post, salidas ,
con detalle.
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 13/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
|||
Espero que os hayáis divertido con este post y que comencéis a cogerle el
gusanillo al mundo del Arduino.
Guillermo Pérez
Blog
En este último post del primer tutorial veremos cómo mostrar a través de una pantalla
LCD la temperatura medida con el sensor...
|||
Guillermo Pérez
Curso
Arduino
Intermedio 3 h. y 59 min.
Curso para aprender a programar en Arduino desde cero de manera practica para que
puedas crear tu propios...
Productos Acerca de
Cursos Nosotros
Becas Profesores
University Contacta
Recursos
Blog
Opiniones
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 15/16
15/10/24, 11:22 a.m. Tutorial Arduino: Ejemplo Semáforo | OpenWebinars
Soluciones Sectores
Agile Learning Tecnológicas de producto
|||
Reportes Farmacia, salud y dispositivos médicos
LMS con integración SSO Empresas de servicios tecnológicos
Dashboard de gestión y Media & Entertainment
control de planes formativos Organismos públicos
Creador de Rutas con IA Entidades educativas
Servicios financieros y legales
Industria e Ingeniería
Logística y Distribución
https://openwebinars.net/blog/tutorial-arduino-ejemplo-semaforo/ 16/16