Menu
CoddyTech

Comandos de palavras

Parte da seção Entradas do Journey de Arduino da Coddy. Lição 16 de 22.

Um caractere por comando acaba ficando limitado rapidamente. Palavras são mais claras: on, off. Uma palavra tem vários caracteres, então leia a linha inteira de uma só vez. Um trecho de texto é uma String, e Serial.readStringUntil() lê os caracteres até encontrar aquele que você indicar, a quebra de linha, que ele descarta:

if (Serial.available() > 0) {
  String command = Serial.readStringUntil('\n');
  if (command == "on") {
    // ...
  }
}

Texto fica entre aspas duplas, "on"; um único caractere fica entre aspas simples, 'o'.

Para escolher um entre vários comandos, encadeie os testes com else if. A placa os testa em ordem e executa apenas o primeiro que for verdadeiro; o último else captura todos os demais casos:

if (command == "on") {
  // ...
} else if (command == "off") {
  // ...
} else {
  Serial.println("Unknown command");
}
challenge icon

Desafio

Fácil

O LED está no pino 13. Controle-o com palavras digitadas no monitor Serial:

  • leia uma linha inteira em uma String
  • on acende o LED, off o apaga
  • qualquer outra palavra exibe Unknown command

Pressione Run, envie on, off ou uma palavra de sua escolha pelo monitor Serial e, em seguida, Check.

Experimente você mesmo

const int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  if (Serial.available() > 0) {
    // leia a linha e, em seguida, aja de acordo com "on", "off" ou qualquer outra coisa
  }
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Entradas

Pratique por conta própria: Playground de Arduino