MANEJO Y APLICACIÓN DE ENTRADAS Y SALIDAS DIGITALES (LED´S)
Enviado por tonnyve • 23 de Septiembre de 2015 • Documentos de Investigación • 659 Palabras (3 Páginas) • 210 Visitas
[pic 1]
MANEJO Y APLICACIÓN DE ENTRADAS Y SALIDAS DIGITALES (LED´S)
PROPOSITO
Utiliza las instrucciones básicas de salida y entrada digital y desarrolla aplicaciones donde utilicen dispositivos de salida (Leds y relevadores) y de entrada (Push-Boton).
USO DE LA SALIDAS DIGITALES
En este subtema vemos las instrucciones básicas para configurar un pin como salida y para determinar el estado de salida (alto o bajo) del mismo.
pinMode(pin, mode)
Se usa en void setup() para congurar un pin específico para que se comporte o como INPUT o como OUTPUT.
pintMode(pin, OUTPUT); //ajusta 'pin' como salida
Los pines digitales de Arduino estan ajustados a INPUT por defecto, por lo que no necesitan ser declarados explícitamente como entradas con pinMode().
Hay también convenientes resistencias de pull-up de 20KOhm, integradas en el chip ATmega, que pueden ser accedidas por software. A estas resistencias pull-up integradas se accede de la siguiente manera.
pinMode(pin, INPUT); //ajusta 'pin' como entrada
digitalWrite(pin, HIGH); //activa la resistencia de pull-up
Las resistencias de pull-up se usarían normalmente para conectar entradas como interruptores. Los pines configurados como OUTPUT se dice que están en un estado de baja impedancia y pueden proporcionar 40 mA a otros dispositivos/circuitos.
Nota: Cortocircuitos en los pines de Arduino o corriente excesiva puden dañar o destruir el pin de salida, o dañar el chip ATmega. A menudo es una buena idea conectar un pin OUTPUT a un dispositivo externo en serie con una resistencia de 470Ohm o 1KOhm.
digitalWrite(pin, value)
Devuelve o el nivel lógico HIGH o LOW a (activa o desactiva) un pin digital especificado. El pin puede ser especificado como una variable o constante (0 - 13).
digitalWrite(pin, HIGH); //ajusta 'pin' a HIGH
digitalRead(pin)
Lee el valor desde un pin digital especificado con el resultado HIGH o LOW. El pin puede ser especicado o como una variable o como una constante (0 - 13).
value = digitalRead(Pin); //ajusta 'value' igual al pin de entrada
Ejemplo de aplicación del digitalWrite
[pic 2] | //Ejemplo de programa de aplicación de digitalWrite int led = 13; //conecta 'led' al pin 13 void setup() { pinMode(led, OUTPUT); //ajusta el pin 13 como salida } void loop() { digitalWrite(led, HIGH); //Pin 13 a estado alto. delay(500); //Espera medio segundo digitalWrite(led, LOW); //Pin 13 a estado bejo. delay(500); //Espera medio segundo } |
Ejemplo de aplicación del digitalWrite y digitalRead
[pic 3] | //Ejemplo de programa con digitalWrite y digitalRead int led = 13; //conecta 'led' al pin 13 int pin = 7; //conecta 'pushbutton' al pin 7 int value = 0; //variable para almacenar el valor leído void setup() { pinMode(led, OUTPUT); //ajusta el pin 13 como salida pinMode(pin, INPUT); //ajusta el pin 7 como entrada } void loop() { value = digitalRead(pin); //ajusta 'value' al pin de entrada digitalWrite(led, value); //ajusta 'led' al valor del boton } |
...