arduino paso a paso

30
Microprocesadores [email protected] 0989997993 g. Javier Cabrera M. Octubre 2015- Marzo 201 FACULTAD DE INGENIERÍA ELÉCTRICA Programación IDE

Upload: juanpablopatino

Post on 09-Jul-2016

25 views

Category:

Documents


1 download

DESCRIPTION

arduino paso a paso practicas

TRANSCRIPT

Microprocesadores

[email protected]

0989997993

Ing. Javier Cabrera M. Octubre 2015- Marzo 2016

FACULTAD DE INGENIERÍA ELÉCTRICA

Programación IDE

Práctica N°1. Encendido y apagado de un LED

Objetivo: Uso de las funciones pinMode () y digitalWrite ()

Funcionamiento: Encender y apagar un LED de forma periódica.

Práctica N°2. Encendido y apagado de un LED sin dalay

Práctica N°3. Encendido y apagado de un LED secuenciales

Funcionamiento: Encender y apagar un LED de forma secuencial.

Práctica N°4. Entradas digitales. Botones

Funcionamiento: Monitorizar el estado de un pulsador utilizando una resistencia “pull-down”.

Práctica N°5. Entradas digitales. Botones

Funcionamiento: Monitorizar el estado de un pulsador utilizando una resistencia “pull-up”.

Práctica N°6. Encendido de un LED mientras se mantiene pulsado

Funcionamiento: Encender un LED mientras se pulsa un botón

Práctica N°7. Encendido y apagado de un LED con un pulsanteFuncionamiento: Encender y apagar un LED con el mismo pulsante

Evaluación 2.

Vamos a diseñar ahora otro circuito: un juego. El circuito constará de tres LEDs conectados cada uno (a través de su respectivo divisor de tensión en serie) a un pin digital diferente de la placa Arduino. Estos LEDs se irán encendiendo y apagando de forma secuencial, y cuando el LED del medio se encienda, el jugador debe apretar en un pulsador. Si acierta, se mostrará un mensaje por el “Serial monitor” y la velocidad de la secuencia de iluminación de los LEDs aumentará (y también lo hará por tanto la dificultad). En nuestro sketch los LEDs están conectados a los pines digitales 5, 6 y 7, y el pulsador al pin 8. El tiempo inicial entre encendido y encendido de los LEDs es 200 ms, pero si el jugador acierta, este tiempo disminuirá en 20 ms, hasta llegar a un tiempo entre encendidos de 10 ms, momento en el cual se volverá al tiempo inicial de 200 ms.

Uso de entradas y salidas analógicas

Práctica 8. Cambio de intensidad lumínica de un LED

El terminal positivo del LED va conectado a un pin PWM de nuestro Arduino (n°9) y su terminal negativo a tierra.

Otra forma de resolver

Práctica 9. Cambio de intensidad lumínica de un LED mediante serial

En el siguiente ejemplo supondremos que tenemos 3 LEDs diferentes (de colores primarios rojo, verde y azul, respectivamente) conectados cada uno a través de su divisor de tensión correspondiente a un pin PWM diferente. La idea es utilizar el “Serial monitor” para enviar a la placa Arduino un comando determinado que especifique qué LED en concreto queremos manipular (indicado por la letra “r”, “g” o “b”) y qué cantidad de brillo le queremos asignar (indicado por un valor entre 0 y 255). Así, si queremos por ejemplo apagar el LED rojo el comando a enviar debería ser “r0”. Y si queremos iluminar al máximo el LED azul, el comando debería ser “b255”.

Práctica 10. Cambio de intensidad lumínica de un LED mediante serial

Otro código que persigue el mismo objetivo que el anterior, pero de una forma algo más compacta, es el siguiente. En él también enviamos a través del canal serie la cantidad de brillo que deseamos que tenga cada LED, pero lo hacemos enviando siempre el brillo de los tres LEDS en cada “comando”. La idea es enviar los tres brillos separados por comas o cualquier otro carácter (o cadena, incluso), de tal forma que Arduino recoja uno tras otro el primer brillo, el segundo y el tercero, para seguidamente asignarlos a los LEDs adecuados.

Práctica 11. Uso de potenciómetro

Consta tan solo de un potenciómetro, conectado tal como se ve en la figura siguiente. El pin de entrada analógico escogido ha sido el nº 2.

Si ejecutamos el siguiente sketch y movemos el potenciómetro, veremos por el “Serial monitor” las lecturas realizadas a través del pin analógico 2, que no son más que valores entre 0 y 1023. Notar que no se ha utilizado la función pinMode() como hasta ahora porque los pines-hembra analógicos de la placa Arduino solo pueden ser de entrada.