Comandos seriales en Arduino
Comandos de una letra desde el monitor manejan los relés.
// One-letter commands from the monitor drive the relays.
const int PUMP_PIN = 7;
const int LIGHT_PIN = 9;
void setup() {
pinMode(PUMP_PIN, OUTPUT);
pinMode(LIGHT_PIN, OUTPUT);
Serial.begin(9600);
}
void loop() {
if (Serial.available() == 0) return;
char command = Serial.read();
switch (command) {
case 'p': digitalWrite(PUMP_PIN, HIGH); break;
case 'P': digitalWrite(PUMP_PIN, LOW); break;
case 'l': digitalWrite(LIGHT_PIN, HIGH); break;
case 'L': digitalWrite(LIGHT_PIN, LOW); break;
default: Serial.println("p/P pump, l/L light");
}
}
Cómo funciona
- El
returntemprano salta la pasada cuando no espera ningún byte. switchrutea cada char de comando a su escritura de pin.- El brazo
defaulthace de texto de ayuda.
Palabras clave y builtins usados aquí
HIGHLOWOUTPUTbreakcasecharconstdefaultifintloopreturnsetupswitchvoid
El intento, en números
- Líneas
- 20
- Caracteres a escribir
- 539
- Tokens
- 141
- Ritmo de tres estrellas
- 65 tpm
Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 130 segundos.
Paso 2 de 3 en Serial; paso 14 de 27 en Fundamentos del lenguaje.