Una de las funciones más interesantes
(si no la más) de Arduino y en general de todos los autómatas es
su capacidad de interacción con el mundo físico. Podemos,
por ejemplo, realizar mediciones de tensión, obtener lecturas de
gran variedad de sensores, encender dispositivos o controlar motores
y actuadores. Esta interacción se lleva a cabo en gran parte
mediante el uso de las entradas y salidas tanto digitales como
analógicas.
¿Qué es una entrada digital?
Una señal digital es una variación de voltaje entre -Vcc
a +Vcc sin pasar por los valores intermedios. Por lo tanto,
una señal digital dispone solo de dos estados. Al valor inferior de
tensión -Vcc le asociamos un valor lógico LOW o ‘0’, mientras
que al valor superior +Vcc le asociamos HIGH o ‘1’ lógico.
En Arduino los valores de
alimentación habituales son 0V y 5V. En este caso la
tensión umbral será muy cercana a 2’5V. Por tanto si medimos una
tensión con un valor intermedio entre 0 a 2’5V Arduino devolverá
una lectura LOW, y si medimos un valor entre 2’5V y 5V, devolverá
HIGH.
Nunca introducir una tensión
fuera del rango 0V a 5V en una entrada digital o analógica
o podemos dañar el pin correspondiente y dejarlo permanentemente
inutilizado.
En Arduino, las entradas y salidas digitales se realizan en las mismas patillas, que se denominan pines de E/S digitales. Eso quiere decir que un mismo pin puede actuar bien como una entrada digital, o bien como una salida digital. por ello es necesario configurar previamente el pin para que funcione de una u otra manera.
Las principales funciones que utilizaremos para las configuración de los pines de E/S como entradas digitales en la placa Arduino son las siguientes:
- pinMode(n, INPUT). Esta función permite configurar cualquiera de los pines digitales como entradas (INPUT).
- digitalRead((n_del_pin). Devuelve un valor digital (HIGH o LOW) leído desde el pin numero_de_pin. Ejemplo: Leer el estado de un pulsador.
- punseIn(n-del_pin, valor_HL). Devuelve un número que es el tiempo en microsegundos que ha estado el n_de_pin al valor_HL.
¿Cómo configuramos las salidas digitales?
Si queremos conectar un led a la placa Arduino y que se encienda, es necesario configurar los pines E/S digitales como salidas digitales. La configuración de los pines digitales, así como la configuración de otros parámetros se realizan a través del IDE de Arduino.
Las principales funciones que utilizaremos para la configuración de los pines de E/S digitales en la placa Arduino son las siguientes:
- pinMode(n, OUTPUT). Esta función permite configurar cualquiera de los pines digitales como salidas (OUTPUT).
- digitalWrite((n, HIGH). Esta función pone el pin n a 5 V (nivel lógico "1"); es decir encendemos el led.
- digitalWrite((n, LOW). Esta función pone el pin n a 0 V (nivel lógico "0"); es decir apagamos el led.
- analogWrite(n_del_pin, valor). Pone en el pin n_del_pin una señal digital PWM, (valor comprendido entre 0 y 255). Solo algunos pines marcados en la placa soportan PWM.
No hay comentarios:
Publicar un comentario