int Botao_Menos = 8; // Variável para selecção do pino de entrada. int Botao_Mais = 9; // Variável para selecção do pino de entrada. int Pino_Saida; // Variável para o selecção do pino de saída. //Correr a função SETUP apenas uma vez após ser pressionado Reset: void setup(){ //Coloca na variável. Pino_Saida = 5; //Enquanto a variável for menor que 8: while (Pino_Saida < 8){ //Definição do tipo de pino (Saída ou Entrada): pinMode(Pino_Saida, OUTPUT); //Soma à variável Pino_Saida o valor +1: Pino_Saida = Pino_Saida +1; } //Definição do tipo de pino (Saída ou Entrada): pinMode(Botao_Menos, INPUT); pinMode(Botao_Mais, INPUT); //Iniciar a Communication Serial a 9600b/s: Serial.begin(9600); } //Correr a função LOOP repetidamente: void loop(){ //Se a leitura do pino botão menos for igual a HIGH ou nível alto: if (digitalRead(Botao_Menos) == HIGH){ //Se a variável for maior que 5: if (Pino_Saida > 5) { //Desliga o LED (LOW é nível baixo): digitalWrite(Pino_Saida, LOW); //Subtrai à variável o valor -1: Pino_Saida = Pino_Saida - 1; } } //Se a leitura do pino de botão mais for igual a HIGH ou nível alto: else if (digitalRead(Botao_Mais) == HIGH){ //Se a variável for menor que 7: if (Pino_Saida < 7 ) { //Desliga o LED (LOW é nível baixo): digitalWrite(Pino_Saida, LOW); //Soma à variável o valor +1: Pino_Saida = Pino_Saida + 1; } } //Escreve no monitor serial o valor da variável: Serial.println(Pino_Saida); //Atraso para o próximo passo: delay(1000); }