O que é digitalWrite()?

A digitalWrite() é uma função interna de controle de hardware da biblioteca principal da plataforma Arduino usada para definir e enviar o nível lógico alto (HIGH / 5V ou 3.3V) ou nível lógico baixo (LOW / 0V) a um pino digital de saída previamente configurado.

Como Aplicar a Função digitalWrite() no Arduino

A escrita digital é a base lógica para ligar e desligar atuadores simples. Ao programar controladores como o Arduino Uno R3 SMD, este comando físico comanda a energia enviada a portas de teste. Passos essenciais de execução:

  • Configuração de Direção Prévia: O pino de saída lógica deve ser previamente definido no escopo de configuração do loop como saída usando a função pinMode(pino, OUTPUT).
  • Envio de Nível Alto (HIGH): O comando digitalWrite(pino, HIGH) satura a porta digital fornecendo a tensão lógica do sistema (5V ou 3.3V) para acender um LED ou ativar um relé.
  • Envio de Nível Baixo (LOW): O comando digitalWrite(pino, LOW) desativa o pino forçando-o a drenar corrente para o terra (GND/0V).

Por ser uma função de alto nível que realiza verificações de segurança dos registros dos pinos, ela consome alguns ciclos de máquina do microcontrolador.

Perguntas Frequentes (FAQ)

O que ocorre se eu usar a digitalWrite() em um pino configurado como entrada (INPUT)?
Em microcontroladores AVR (como o ATmega328P), executar a digitalWrite(pino, HIGH) em uma porta de entrada ativa fisicamente o resistor interno de pull-up daquele pino.
Qual a diferença de execução entre digitalWrite() e analogWrite()?
A digitalWrite() envia apenas dois níveis lógicos estáticos e definidos (HIGH ou LOW). A analogWrite() envia sinais lógicos de comutação PWM modulados com 256 níveis lógicos discretos de potência.
Voltar para o blog