Implementación
Proyecto Arduino
Presentación Introducción a la Ingeniería
MSc. Jorge Luis Cárdenas Rangel
Profesor
ARDUINO
Figura. Partes del Arduino.
Comentarios, setup( ) y loop( )
Elementos de sintaxis
Los principales elementos de sintaxis son el
punto y coma (;) y las llaves ({ }).
Toda instrucción debe ir seguida de un “punto y
coma” (;). Pueden ir varias instrucciones en un
mismo renglón, separadas por “;”.
Las llaves ({ }) se usan para delimitar el inicio y el
fin de diversas construcciones:
• Funciones.
• Bucles de repetición.
• Instrucciones condicionales.
Entradas / Salidas digitales
Los pines digitales de Arduino pueden funcionar
tanto como entradas como salidas. El modo hay que
declararlo previamente con la instrucción:
pinMode (pin, modo)
El parámetro ‘modo’ puede adoptar los valores
INPUT u OUTPUT.
Se lee en una entrada digital con la función:
digitalRead (pin)
Se escribe en una entrada digital con la función:
digitalWrite (pin, valor)
El parámetro ‘valor’ puede valer HIGH o LOW o
valores equivalentes.
Ejercicio 1: Encendido de un LED
Contantes y variables
Para poder recordar mejor el uso que hagamos de los pines
podemos asignarles nombres relacionados con dicho uso,
así no tenemos que recordar los números. Estos nombres se
llaman constantes, y se definen utilizando la instrucción
#define const número
Observa que esta instrucción no acaba en punto y coma (;)
Una variable es un modo de nombrar y guardar un valor que
puede variar para su uso posterior por el programa.
Cualquier variable debe ser declarada antes de utilizarse.
• Variables globales, se declaran al inicio del programa,
delante de la función setup. Pueden usarse en
cualquier parte del programa.
• Variables locales, sólo pueden usarse dentro de la
función en la que se declaran.
Los nombres válidos
Los nombres de los sketch, de las variables,
de las constantes y de las funciones no
pueden contener espacios, (puede usarse el
guion bajo).
Los nombres dados a variables, constantes y
funciones no deben coincidir con palabras
clave de Arduino.
Hay una serie de constantes con nombres
reservados:
false y true.
INPUT y OUTPUT.
HIGH y LOW.
Los tipos de datos
Toda variable utilizada debe ser declarada previamente, indicando el tipo de datos que
contendrá. Para las funciones se indica el tipo de datos que devuelve, si es el caso.
• void: sólo para funciones que no devuelven nada.
• boolean: true o false.
• char: caracteres.
• int: valores enteros cortos.
• unsigned int: enteros cortos sin signo.
• long: valores enteros largos.
• unsigned long: enteros largos sin signo.
• float: valores decimales.
Ejercicio 2: Encendido de un LED por un pulsador
Estructura condicional if
La estructura if decide si ejecutar o no una o varias
instrucciones en función de que se cumpla una condición.
if (condición) {
instrucción_1;
instrucción_2;...
}
if (condición) {
instrucciones_A; }
else {
instrucciones_B; }
Para expresar la condición se utilizan operadores de
comparación ( ==, !=, <, >, <=, >= )
Estructura condicional if
La estructura if decide si ejecutar o no una o varias
instrucciones en función de que se cumpla una
condición.
if (condición) {
instrucción_1;
instrucción_2;...
}
if (condición) {
instrucciones_A; }
else {
instrucciones_B; }
Para expresar la condición se utilizan operadores de
comparación ( ==, !=, <, >, <=, >= )
Estructura if….else if… else
if (condición_1) {
instrucciones_1; }
else if (condición_2) {
instrucciones_2; }
.
.
.
else if (condición_N) {
instrucciones_N; }
else { //es opcional
instrucciones_else; }
Entradas analógicas
Los pines analógicos de Arduino pueden funcionar
como entradas analógicas o como pines digitales
iguales a los otros (llevan una A delante del número
para distinguirlos: A0,A1,...,A5).
No pueden funcionar como salidas analógicas.
Se lee en una entrada analógica con la función:
analogRead (pin)
Devuelve un valor entre 0 y 1023 que corresponden
a tensiones entre 0 V y 5 V respectivamente.
Ejercicio 3: Termómetro
Salidas analógicas
En realidad, Arduino no tiene salidas analógicas, sino
que simula un nivel de tensión analógico entre 0 V y 5
V con una señal digital cuadrada con anchura de pulso
modulada (PWM).
En la placa Arduino UNO, los pines digitales que se
pueden usar para este tipo de salidas son: 3, 5, 6, 9, 10
y 11.
Se escribe un valor analógico en una salida digital con la
función:
analogWrite (pin, valor)
El parámetro “valor” debe estar comprendido entre 0 y
255, que corresponden a tensiones de 0 V a 5 V
respectivamente.