Para começar, vamos definir três arrays: botao, vai servir para indicar as portas usadas pelos botões do nosso sistema; LEDs, portas digitais que os LEDs usam; flag, que indica qual o estado (ligado/desligado) de cada LED.
Já void setup() iniciamos o Monitor Série e indicamos o pinMode das portas digitais que vamos usar para os botões e LEDs. Um outro passo que também fazemos é inicializar todos os LEDs, isto é, garantir que todos os LEDs estão desligados.
No void loop() o primeiro passo é ler o valor de cada botão e, em seguida, verificar o seu valor através da função ligaDesliga().
A função ligaDesliga() recebe dois parâmetros: o primeiro é o estado do botão, isto é, se este está a ser pressionado ou não; o segundo o índice do array onde tem a indicação da porta digital do LED que pretendemos ligar ou desligar.
Na conclusão da Etapa 01, observamos o êxito na implementação da automação da iluminação nas divisões da casa. Conseguimos estabelecer um sistema que não só permite a ativação e desativação das luzes, mas também abre caminho para um controlo personalizado e eficiente. Essa conquista representa não apenas um avanço tecnológico, mas também um passo significativo em direção a um ambiente residencial mais inteligente e adaptável às necessidades individuais, promovendo conforto e eficiência energética.