Leer un carácter serial
Parte de la sección Entradas del Journey de Arduino de Coddy. Lección 15 de 22.
La conexión Serial funciona en ambos sentidos. El texto que escribes en el cuadro del monitor Serial y envías con Enviar llega a la placa carácter por carácter, y espera allí en un búfer hasta que el sketch lo lee.
Serial.available() indica cuántos caracteres están esperando. Serial.read() saca el siguiente del búfer. Un carácter cabe en una variable char, escrita entre comillas simples:
if (Serial.available() > 0) {
char c = Serial.read();
if (c == '1') {
// Se escribió 1
}
}'1' entre comillas simples es el carácter 1, la tecla que pulsas. No es el número 1: la placa almacena el carácter como el código 49.
El monitor Serial también envía un carácter de nueva línea invisible, escrito '\n', después de lo que escribas. Un sketch actúa sobre los caracteres que reconoce e ignora los demás.
Desafío
FácilEl LED está en el pin 13. Cámbialo desde el monitor Serial:
- cuando haya un carácter esperando, léelo en un
char '1'enciende el LED,'0'lo apaga- cualquier otro carácter, como el salto de línea, no cambia nada
Pulsa Run, escribe 1 o 0 en el monitor Serial y pulsa Send; después, Check.
Pruébalo tú mismo
const int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
// cuando haya un carácter esperando, léelo
// '1' enciende el LED, '0' lo apaga
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Entradas
3Entrada serial
Leer un carácter serialComandos de palabrasVelocidad de parpadeo desde SerialParpadear con un comandoPractica por tu cuenta: Playground de Arduino