Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Folleto de Teoría Básico
Folleto de Teoría Básico
Introducción:
Introducción a C:
Casi todas las sintaxis de los códigos de ejecución culminan con un “;” de esta
manera:
digitalWrite(3, HIGH);
Por otro lado, líneas de código que emplean condiciones o etiquetas (labels)
como los void y que a su vez engloban códigos condicionados, encierran dichos
códigos entre llaves “{}”.
if(digitalRead(3)==HIGH){
digitalWrite(2, LOW);}
1
instrucciones del usuario. Algunos ejemplos son número de pin, estado del pin,
condición.
Los programas de Arduino tienen una estructura lógica definida que casi
siempre hay que respetar. Por lo general se inicia con la declaración de variables a
nivel global (para todo el código), luego una etiqueta de configuración (que contiene
códigos de ejecución One-Time o de una sola vez) y culmina en la rutina que se
ejecuta por forma indefinida.
+ Apartado de Variables:
2
Las variables las utilizamos para almacenar valores que cambian a lo largo
del programa o necesitan almacenarse de forma permanente sin variaciones (como
constantes).
Para utilizar variables dentro de los códigos hay tres procesos que hay que
seguir y que son obligatorios. El primero es declarar la variable utilizando la siguiente
sintaxis:
Ejemplo:
Int Lectura1 = 0;
NombredeVariable = ValordeEjecución;
Ejemplo:
Lectura1 = digitalRead(1);
3
La ubicación de este código puede ir en cualquier lugar, pero si se quiere que
actualice cada vez que se repita la rutina, debe ir en el Void Loop.
Por último empleamos la variable de alguna forma, siendo posible definir las
propiedades de algún comando o bien, definiendo una condición. Para utilizarla, solo
basta colocar el nombre de la variable, como se muestra a continuación:
Ejemplo 1.
digitalWrite(3, Lectura1);
Ejemplo 2.
If(Lectura1==HIGH){
digitalWrite(3, Lectura1);
+ Apartado de configuración:
+ Apartado de rutina:
4
Todos los códigos que se encuentran en el cuadro de la rutina, se repetirán
de forma ordenada y de forma indefinida hasta que el Arduino sea apagado. Como
consejo al momento de hacer un programa de Arduino, es importante hacer un
diagrama de bloques para que se entienda de la mejor forma y sea más rápido de
programar. Un ejemplo de diagrama de bloques se presenta a continuación:
if(condiciónquesedebecumplir){
acciónaejecutarsisecumple;
else{
acciónsinosecumple
5
Para el ejemplo del diagrama de bloques, nuestro código implica verificar si
la patilla 2 tiene un positivo o un neutro conectado (1 o 0 respectivamente). Si se
cumple la condición (si hay un 1), entonces enciende un led en la patilla 3 y se
apaga un led en la patilla 4. Si no se cumple la condición, entonces la acción es
que se apague el led en la patilla 3 y se encienda el led en la patilla 4.
Para ir adelantando un poco de los puertos digitales, cada pin que usemos
como entrada o como salida digital debe ser configurada con el comando pinMode
y para cambiar los valores utilizamos digitalWrite en el caso de las salidas y para
leer el estado de un pin digital usamos digitalRead. Las sintaxis que se emplean para
el digitalWrite es:
digitalWrite(numerodepin, estado);
Ejemplo1:
digitalWrite(3, HIGH);
6
Para el digitalRead es:
Valor = digitalRead(patilla);
Ejemplo1:
If(digitalRead(2)==HIGH){}
Puerto Digital:
Configuración
Para configurar una patilla como puerto digital es necesario usar el comando
PinMode, que funciona con la siguiente sintaxis:
pinMode(patillaaconfigurar, modo);
En total hay dos modos en que podemos configurar, como INPUT (como
entrada) o bien como OUTPUT (como salida).
Es importante que conozcas que todos los pines que usemos como puertos
digitales deben ser configurados, si no se hace, podría ocasionar errores o bugs en
la programación del Arduino.
7
Utilización
digitalWrite(numerodepin, estado);
En total hay dos estados para el digitalWrite, los cuales son HIGH para poner
un pin en 1 y el LOW para poner un pin en 0.
Por otro lado, para utilizar un puerto digital como entrada, debemos utilizar
el comando digitalRead, que nos generará un valor booleano (1 o 0). Podríamos
eventualmente cargar dichos valores en una variable INT o bien utilizarlos en una
condición. En el primer caso se usará la siguiente sintaxis:
Variable = digitalRead(pin);
If(digitalRead(2)==LOW){}
8
Puerto Analógico:
5000 𝑥
=
1023 𝑣𝑎𝑙𝑜𝑟 𝑜𝑏𝑡𝑒𝑛𝑖𝑑𝑜
5000 𝑥
=
255 𝑣𝑎𝑙𝑜𝑟 𝑜𝑏𝑡𝑒𝑛𝑖𝑑𝑜
Variable = analogRead(patilla);
Ejemplo1:
If(analogRead(A0)<1000){}
9
Es importante recordar que NO SE DEBE exceder de 5V en la entrada de estas
patillas. Para colocar más de 5V debemos usar un divisor de voltaje como mínimo.
Por otro lado, para emplear un puerto analógico como salida, debemos usar
las patillas digitales que tengan una ondulación (~), lo cual nos indica que son
patillas PWM (Pulse Width Modulation).
analogWrite(patilla, PWMValor);
Ejemplo:
analogWrite(3, 200);
10