Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Serial.println não lendo o estado do botão

Pessoal, meu monitor serial não mostra nada, olhando o código, não consigo identificar o erro.

  void setup() {
  Serial.begin(9600); //inicia o monitor do arduino, passe como argumento a taxa de comunicação de 9600
  iniciaPortas();
  iniciaJogo();
 }

void loop() {
 for (int i=0; i<TAMANHO_SEQUENCIA; i++){
  piscaLed(sequenciaLuzes[i]);
 } 
 int estado = digitalRead(BOTAO_VERDE);
 Serial.println(estado);
}

void iniciaPortas(){
  pinMode(LED_VERDE,OUTPUT);
  pinMode(LED_AMARELO,OUTPUT);
  pinMode(LED_VERMELHO,OUTPUT);
  pinMode(LED_AZUL,OUTPUT);

  pinMode(BOTAO_VERDE,INPUT_PULLUP);
  pinMode(BOTAO_AMARELO,INPUT_PULLUP);
  pinMode(BOTAO_VERMELHO,INPUT_PULLUP);
  pinMode(BOTAO_AZUL,INPUT_PULLUP);

}

void iniciaJogo(){
  sequenciaLuzes[0] = LED_AZUL;
  sequenciaLuzes[1] = LED_VERDE;
  sequenciaLuzes[2] = LED_VERMELHO;
  sequenciaLuzes[3] = LED_AMARELO;
}
3 respostas

Olá, Rafael.

Você está recebendo alguma mensagem de erro?

solução!

Olá Marco,

Resolvi o problema, no entanto não estava recebendo nenhuma mensagem de erro e o código estava compilando normal.

Antes meu array estava assim:

int sequenciaLuzes [] {TAMANHO_SEQUENCIA};

Aí eu só coloquei dentro do colchete direto e acabou funcionando:

int sequenciaLuzes [TAMANHO_SEQUENCIA];

Show!

Muito bom cara. Que bom que pego o erro e ainda por cima postou aqui a solução. Obrigado!