digitalWrite()
Para controlar una salida digital, se debe usar la función digitalWrite(). Esta función acepta como argumentos el GPIO al que se hace referencia y su estado (alto o bajo).
digitalWrite(GPIO, STATE)
digitalRead()
Para leer una entrada digital, como un botón, se utiliza la función digitalRead(). Esta función acepta como argumento el GPIO al que se hace referencia.
digitalRead(GPIO)
Ejemplo:

const int pulsadorPin= 4; // El número de pin al que está conectado el pulsadorconst int ledPin = 16; // El número de pin al que está conectado el LED
// variable de tipo entreo que sirve para almacenar en cada momento el estado en el que se encuentra el pulsadorint estadoPulsador= 0;
void setup()
{
Serial.begin(115200); // Configuramos el pin del pulsador como entradapinMode(pulsadorPin, INPUT);// Configuramos el pin del LED como salidapinMode(ledPin, OUTPUT);
}
void loop()
{
// Lee el estado del pulsador y lo almacena en la variableestadoPulsador = digitalRead(pulsadorPin);Serial.println(estadoPulsador );// Chequea si el pulsador está presionado.// Si es así, el estado del pulsador pasa a HIGHif (buttonState == HIGH)
{// enciende el LED digitalWrite(ledPin, HIGH);}
else
{// Apaga el LEDdigitalWrite(ledPin, LOW);}
}