O que é digitalWrite()?
Share
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). AanalogWrite()envia sinais lógicos de comutação PWM modulados com 256 níveis lógicos discretos de potência.