Вы находитесь на странице: 1из 8

Instruccin digitalWrite

Esta leccin muestra una de las instrucciones ms usadas en Arduino, nos referimos a la instruccin
digitalWrite, observe en la siguiente figura que parmetros lleva.

Descripcin
Esta instruccin es capaz de enviar un nivel alto (5 Volts) o un nivel bajo (0 Volts) a una terminal especifica
de Arduino, claro que se habla de las terminales de E/S digitales vistas en la leccin anterior.
Ejemplos de la Instruccin digitalWrite
Un ejemplo real de la instruccin es as:
digitalWrite( 13, HIGH);
Vea los parmetros como se remplazan por el valor deseado, el pin es igual a 13 y el valor es igual a
HIGH. Qu hace la instruccin?: Enva 5Vols a la terminal 13 de Arduino.
Otro ejemplo:
digitalWrite( 7, LOW);
Ahora los parmetros toman los valores siguientes: pin = 7 y el valor = LOW Qu hace la instruccin?: Enva
0 Vols a la terminal 7 de Arduino.
Por supuesto que para que estas terminales funcionen as se requiere previamente avisarle a Arduino que
son terminales de salida, con la instruccin pinMode que se vio en el artculo anterior a este.
Vea la siguiente animacin, ah se muestra simblicamente que pasa en el Arduino cuando se ejecutan las
instrucciones anteriores, el nivel alto se simboliza con una ruedita roja y el nivel bajo con una ruedita azul.

En la conexin el nivel alto hace que encienda el LED conectado al pin 13 de Arduino y con el nivel bajo el
LED conectado al pin 7, no enciende porque obviamente no le llega voltaje a su terminal positiva, en ese
caso le llega tierra.
NOTA: La animacin es para fines ilustrativos, pues la conexin anterior entre el LED y Arduino se debe
colocar una resistencia, como se ver en artculos prximos.
Recuerde
En electrnica digital solo hay dos valores que es el 1 y el 0, que equivalen a los niveles de voltaje
mencionados en el prrafo anterior, vea la tabla siguiente:
Electrnica digital

Nivel de voltaje

Voltaje

Arduino

Nivel alto

+ 5 Volts

HIGH

Nivel bajo

0 Volts

LOW

Bajo este contexto, se acostumbra decir que se enva un 1 a la terminal 13 de Arduino, y esto equivale a
decir que se envan 5 Volts a la terminal 13 del Arduino, o que se enva un nivel alto a la terminal 13 del
Arduino. As que en adelante se usar el 1 y el 0 para denotar los niveles de voltaje
Dnde se escribe la instruccin digitalWrite()
La instruccin digitalWrite, normalmente se coloca en la funcin loop, como se recordar, la funcin setup()
es la preparacin y la funcin loop() es la ejecucin.
Observe la siguiente animacin, ah se muestra exactamente donde van las instrucciones que hace ratos se
mostraron como ejemplos, note como se agrega la funcin pinMode tal y como se mencion en el artculo
anterior.

Ejecucin de las instrucciones en Arduino


Por ltimo vea en la siguiente animacin el flujo de ejecucin que sigue Arduino, ejecuta las instrucciones
una de tras de otra, pero siempre inicia en la funcin setup(), la ejecucin en la animacin se muestra con
una lnea verde.

digitalRead()
Description
Reads the value from a specified digital pin, either HIGH or LOW.

Syntax
digitalRead(pin)

Parameters
pin: the number of the digital pin you want to read (int)

Returns
HIGH or LOW

Example
Sets pin 13 to the same value as pin 7, declared as an input.
int ledPin = 13; // LED connected to digital pin 13
int inPin = 7;
// pushbutton connected to digital pin 7
int val = 0;
// variable to store the read value
void setup()

{
pinMode(ledPin, OUTPUT);
pinMode(inPin, INPUT);

// sets the digital pin 13 as output


// sets the digital pin 7 as input

}
void loop()
{
val = digitalRead(inPin);
digitalWrite(ledPin, val);
}

// read the input pin


// sets the LED to the button's value

[Get Code]

Note
If the pin isn't connected to anything, digitalRead() can return either HIGH or LOW
(and this can change randomly).

The analog input pins can be used as digital pins, referred to as A0, A1, etc.

Instruccin pinMode
En esta leccin se muestra la primera instruccin para el Arduino, la instruccin pinMode, que es necesaria
para configurar las terminales del Arduino Duemilanove, antes de ver en detalle est instruccin, en la
siguiente seccin se muestra, a que se refiere con configurar las terminales del Arduino
Entradas / Salidas Digitales
Recuerdan la leccin 1.1, en ella se describa la tarjeta Arduino Duemilanove, ah se dijo que para conectar
el Arduino con el mundo exterior se usan dos conectores de entrada/salidas (E/S) digitales, si no lo
recuerdas aqu vuelvo a colocar una imagen con dichas E/S.

Es ms fcil trabajar con diagramas esquemticos, as que, se realiz en el software Proteus el diagrama
esquemtico de la tarjeta Duemilanove, para poder mostrar los circuitos como se hace en electrnica, con
diagramas esquemticos. La figura siguiente muestra pues, el diagrama esquemtico de la Duemilanove
donde se observan de nueva cuenta las entradas/salidas digitales.

De la animacin se observa que:

En el caso del LED, el flujo de corriente SALE del Arduino y llega al LED y el LED enciende, se
dice, entonces que la terminal 13 del Arduino es una terminal de SALIDA.

En el caso del sensor, el flujo de corriente ENTRA del sensor al Arduino, se dice en ese caso que
la terminal 2 es una terminal de ENTRADA.
Ahora si queda bien claro porque se les llama terminales de E/S verdad?, en estas terminales solo hay dos
opciones, la terminal es entrada o la terminal es salida no hay ms.
Configuracin de las terminales de E/S

Arduino no es adivino, el no sabe qu piensas hacer tu, con sus terminales, el no sabe si a la terminal 13 va
a conectarse un LED o va a la terminal 5, no sabe dnde vas a conectar los sensores, si a la terminal 2 o a
otra, SIEMPRE ES NECESARIO DECIRLE A ARDUINO CUAL TERMINAL SER ENTRADA Y CUAL SALIDA. Para
hacer lo anterior se usa una instruccin llamada pinMode, se describe mejor en la siguiente imagen.

La instruccin pinMode lleva dos parmetros (lo que va entre parntesis se llaman parmetros):

Uno es llamado pin, que representa el nmero de terminal

Y otro llamado modo, que representa si la terminal es entrada o salida


La siguiente imagen muestra ejemplos especficos para la animacin de arriba, donde haba un LED y un
sensor.

El primer ejemplo indica que el pin o terminal 13 se configura como salida, y el segundo indica que la
terminal 2 se configura como entrada.
IMPORTANTE: las instrucciones deben terminar con punto y coma, como se observa en los ejemplos.
Dnde se escriben las instrucciones de configuracin?
Pongamos ahora si todo en orden, la instruccin de configuracin se escribe dentro de la funcin setup(),
esta funcin se analizo en un artculo anterior a este, nos conviene ah pues esta funcin se ejecuta una sola
vez y la instruccin pinMode generalmente solo se ejecuta una sola vez, observe la animacin, vea donde se
escriben estas instrucciones.

Вам также может понравиться