Leia um caractere serial
Parte da seção Entradas do Journey de Arduino da Coddy. Lição 15 de 22.
A conexão serial funciona nos dois sentidos. O texto digitado na caixa do Monitor Serial e enviado com Enviar vai para a placa um caractere por vez e fica lá em um buffer até que o sketch o leia.
Serial.available() informa quantos caracteres estão aguardando. Serial.read() retira o próximo do buffer. Um caractere cabe em uma variável char, escrita entre aspas simples:
if (Serial.available() > 0) {
char c = Serial.read();
if (c == '1') {
// 1 foi digitado
}
}'1' entre aspas simples é o caractere 1, a tecla que você pressiona. Não é o número 1: a placa armazena o caractere como o código 49.
O Monitor Serial também envia um caractere invisível de nova linha, escrito como '\n', depois do que você digitar. Um sketch age sobre os caracteres que conhece e ignora quaisquer outros.
Desafio
FácilO LED está no pino 13. Alterne-o pelo monitor Serial:
- quando um caractere estiver aguardando, leia-o em um
char '1'liga o LED,'0'o desliga- qualquer outro caractere, como a quebra de linha, não altera nada
Pressione Run, digite 1 ou 0 no monitor Serial e pressione Send, depois Check.
Experimente você mesmo
const int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
// quando houver um caractere aguardando, leia-o
// '1' acende o LED, '0' o apaga
}
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
3Entrada Serial
Leia um caractere serialComandos de palavrasVelocidade de piscar via serialPiscar ao receber um comandoPratique por conta própria: Playground de Arduino