Está en la página 1de 8

INSTITUTO DE COMERCIO Y TECNOLOGIA

PACCIOLI

DESARROLLO DE APLICACIONES EN ARDUINO

INTEGRANTES: MARILYN MALAGA PIEROLA

DANIEL SEJAS GONZALES


KEVIN DANIEL CASTRO TAPIA

DOCENTE: ING. VLADIMIR BALDERRAMA ORTUÑO

CARRERA: SISTEMAS INFORMATICOS

MATERIA: PROGRAMACION PARA DISPOSITIVOS MOVILES -1

FECHA: 16/03/2023

GESTION

2023
DESARROLLO DE APLICACIONES EN ARDUINO

Entradas y Salidas en Arduino

Arduino dispone de una serie de entradas y salidas digitales y analógicas


programables que es la base de manejo de Arduino. Es fundamental
conocerlas para empezar a programar Arduino.

En Arduino UNO la disposición de los pines de entrada y salida son:

En arduino y placas compatibles para tratar las entradas y salidas digitales


usamos las siguientes funciones:

 pinMode() – configura en el pin especificado si se va a comportar como


una entrada o una salida.
 digitalWrite() – Escribe  un valor HIGH o LOW en el pin digital
especificado. Si el pin está configurado como OUTPUT pone el voltaje
correspondiente en el pin seleccionado. Si el pin está configurado como
INPUT habilita o deshabilita la resistencia interna de pull up del
correspondiente pin.
 digitalRead() – lee el valor del pin correspondiente como HIGH o LOW.

En la imagen siguiente se muestra el estado por defecto de una I/O digital en


un microcontrolador de Arduino. Se ha simplificado con interruptores la
compleja electrónica que hay dentro. Por defecto los digital I/O pins están
configurados como inputs en un estado de alta impedancia (equivalente a
una resistencia de 100 Mohms en frente del pin), es decir, SW3 a ON y no hace
falta llamar a la función pinMode() aunque es recomendable para aclarar el
código.

 PinMode(x, INPUT) –> SW3 = ON (resto a OFF). Los valores leídos


serán aleatorios si el pin de Arduino está al aire. El pin está en un estado
de alta impedancia (resistencia de 100 Mohms).
 PinMode(x,INPUT_PULLUP) –> SW3 = ON & SW4 = ON (resto a OFF).
Los valores leídos sin nada conectado al pin es HIGH. La Resistencia
R1 tiene un valor dependiendo del microcontrolador, pero tiene un valor
entre 20kOhm y 150kOhm.
 PinMode(x, OUTPUT) & digitalWrite(x,HIGH) –> SW2 = ON & SW1 =
+5V (resto a OFF). Estado de baja impedancia, no hay resistencia
interna y es necesario poner una resistencia adecuada a la salida el pin
para no superar los 40mA (source) máximos admitidos
 PinMode(x, OUTPUT) & digitalWrite(x,LOW) –> SW2 = ON & SW1 =
GND (resto a OFF). Estado de baja impedancia, no hay resistencia
interna y es necesario poner una adecuada para no superar los 40mA
(sink) máximos admitidos

Entradas y salidas digitales y analógicas

 9.1. Función pinMode(pin, mode)


 Función usada en la function setup() para configurar un pin dado para
comportarse como INPUT o OUTPUT. Ej. pinMode(pin, OUTPUT);
configura el pin número 'pin' como de salida. Los pines de Arduino
funcionan por defecto como entradas, de forma que no necesitan
declararse explícitamente como entradas empleando pinMode().
 9.2. Función digitalRead(pin)
 Lee el valor desde un pin digital específico. Devuelve un valor HIGH o
LOW. El pin puede ser especificado con una variable o una constante (0-
13). Ej. v = digitalRead(Pin);
 9.3. Funcion digitalWrite(pin, value)
 Introduce un nivel alto (HIGH) o bajo (LOW) en el pin digital
especificado. De nuevo, el pin puede ser especificado con una variable o
una constante 0-13. Ej. digitalWrite(pin, HIGH);
 9.4. Función analogRead(pin)
 Lee el valor desde el pin analógico especificado con una resolución de
10 bits. Esta función solo funciona en los pines analógicos (0-5). El valor
resultante es un entero de 0 a 1023. Los pines analógicos, a diferencia
de los digitales no necesitan declararse previamente como INPUT o
OUTPUT.
 9.5. Función analogWrite(pin, value)
 Escribe un valor pseudo-analógico usando modulación por ancho de
pulso (PWM) en un pin de salida marcado como PWM. Esta función está
activa para los pines 3, 5, 6, 9, 10, 11. Ej analogWrite(pin, v); // escribe
'v' en el 'pin' analógico. Puede especificarse un valor de 0 - 255. Un valor
0 genera 0 V en el pin especificado y 255 genera 5 V. Para valores de 0
a 255, el pin alterna rápidamente entre 0 V y 5 V, cuanto mayor sea el
valor, más a menudo el pin se encuentra en HIGH (5 V). Por ejemplo, un
valor de 64 será 0 V tres cuartas partes del tiempo y 5 V una cuarta

MANEJO BÁSICO DE ENTRADAS Y SALIDAS LED Y BOTONES


ENTRADAS DIGITALES
Una señal digital es aquella que sólo puede tomar ciertos valores (alto o bajo).
Su forma característica es conocida como señal de onda cuadrada y las
representaciones se realizan en el dominio del tiempo. La función principal de
las salidas digitales es entregar una señal de control que le dará funcionalidad
a un circuito electrónico que será el encargado de cumplir con las funciones
que el usuario requiera.
Las entradas digitales permiten recibir señales de voltaje. En arduino
disponemos de 14 pines digitales serigrafiados con los números del 0 al 13,
utilizados para entradas y salidas digitales.La entrada digital toma los valores
0V (bajo) ó 5V (alto).
SALIDAS DIGITALES
Una salida digital es un dispositivo que permite cambiar su voltaje a uno de
estos dos valores mediante programación, lo que hace que puedas manipular
el entorno. Por lo general, en Arduino, los voltajes -Vcc y +Vcc corresponden a
0V (GND) y 5V, respectivamente.
 1 x Arduino UNO
 1 X Protoboard
 1 x led (usaremos rojo pero vale cualquier color)
 1 x Botón
 1x Resistencia de 220Ω (puede valer de 330Ω)
 1 x Resistencia de 10kΩ (puede valer de 1 ó 5 kΩ)
 Cables para conectar todo
Con todo comenzaremos a montar nuestro circuito como se describe en el
siguiente esquema.
Usaremos el pin 2 para encender el led y el 4 para saber el estado del
botón. Al montarlo debemos tener en cuenta un par de detalles. Primero,
que conectemos correctamente la polaridad del led, siguiendo las
indicaciones que os dimos en el ejemplo del semáforo. Segundo, que
usemos la resistencia de 10kΩ para conectar el botón a tierra . Esto es muy
importante, ya que con eso protegemos a nuestra placa de crear un
cortocircuito a tierra que podría deteriorarla. La resistencia de 220Ω, como
en ejemplos anteriores, la usaremos para conectar el led a tierra.
PULSADOR
Empezaremos con el botón más sencillo de programar y usar que tenemos,
el pulsador . Éste nos permite realizar una acción mientras mantengamos
pulsado nuestro botón, por ejemplo que un led se quede encendido
mientras estemos pulsando.
Es decir, apretar el botón y una vez suelto se ha de mantener encendido.
Cuando se apriete otra vez ha de mantenerse apagado.
Botón sumador . Cada vez que se aprieta el pulsador aumenta en 1 una
variable contador.

Para nuestro programa declararemos una variable llamada “ pulsador ” que


usaremos para saber si nuestro botón está pulsado o no.
Int pulsador=0;
Dentro del setup, configuraremos el pin digital 2 como salida para poder dar
la orden de encender o apagar.
pinMode(2, OUTPUT);
Para que podamos saber en qué estado se encuentra nuestro botón
configuraremos el pin digital 4 como entrada .
pinMode(4, INPUT);
Finalmente nuestro código loop lo que hará será, primero leer del pin 4 en
qué estado está el botón mediante la sentencia digitalRead. Este valor lo
almacenaremos en la variable “pulsador” que declaramos anteriormente.
Pulsador = digitalRead(4);
Una vez que sepa cómo se encuentra el botón, mediante una función “if”, si
el pulsador está HIGH (pulsado) encenderá el led y si el pulsador está en
LOW (sin pulsar) lo apagará.

If(pulsador==HIGH) {
digitalWrite(2, HIGH);
}
Else{
digitalWrite(2, LOW);
El código completo quedaría así:
/**************************/
/* Encender LED con Botón */
/* Pulsador */
/**************************/
/*** Fernando Martinez Mendoza ***/
//** Definiciones **//
Int pulsador=0; //almacena el estado del botón
//** Programa **//
Void setup() {
pinMode(2, OUTPUT); //declaramos el pin 2 como salida
pinMode(4, INPUT); //declaramos el pin 4 como entrada
}

Void loop() {
Pulsador = digitalRead(4); //lee el estado del botón
If(pulsador==HIGH) { //si el estado es pulsado
digitalWrite(2, HIGH); //se enciende el led
}
Else{ //si el estado es no pulsado
digitalWrite(2, LOW); //se apaga el led
}
}
ARREGLOS EN ARDUINO:
¿Qué es un arreglo en Arduino?
Un array es una ordenación de un conjunto de datos del mismo tipo ordenados
mediante un índice. Si queremos tratar un objeto de forma individual, al que le
debemos asociar un nombre; para tratar con 100 objetos del mismo tipo,
tendremos que crear 100 nombres distintos.
Declaración de un array:
 1int miArray[] = {valor0, valor1, valor2…}
Del mismo modo es posible declarar un array indicando el tipo de datos y el
tamaño y posteriormente, asignar valores a una posición específica:
 int miArray[5];
 2) miArray[3] = 10;
Para leer de un array basta con escribir el nombre y la posición a leer:
 x = miArray[3];

Serial,begin(9600);
Esta instrucción le indica al Arduino que inicie
comunicación con la computadora (o cualquier
dispositivo conectado a los pines RX y TX) con
una velocidad de comunicación serial de 9600
bits por segundo (baudios).
Existen otras velocidades de transmisión de
datos, tales como 300, 600, 1200, 2400, 4800,
9600, 14400, 19200, 28800, 38400, 57600 o
115200. Estos son los valores
predeterminados para comunicación entre
Arduino y una computadora

Serial.print(); o Serial.println();
La función de Arduino Serial print y
println, permiten escribir caracteres ascii en el
puerto Serial.

También podría gustarte