random en Arduino
Siembra desde un pin flotante y saca de un rango.
// A floating analog pin seeds random with real-world noise.
const int LAMP_PIN = 11;
void setup() {
pinMode(LAMP_PIN, OUTPUT);
randomSeed(analogRead(A5));
Serial.begin(9600);
}
void loop() {
// random(min, max) excludes the top: 0..255 here.
int flicker = random(0, 256);
analogWrite(LAMP_PIN, flicker);
if (flicker > 250) {
Serial.println("Full flare");
}
delay(random(40, 120));
}
Cómo funciona
randomSeed(analogRead(A5))usa ruido eléctrico como entropía.random(0, 256)excluye la cota superior.- Hasta el delay es azaroso — tempo de vela que titila.
Palabras clave y builtins usados aquí
OUTPUTconstifintloopsetupvoid
El intento, en números
- Líneas
- 18
- Caracteres a escribir
- 385
- Tokens
- 86
- Ritmo de tres estrellas
- 65 tpm
Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 79 segundos.
Paso 3 de 3 en Periféricos; paso 24 de 27 en Fundamentos del lenguaje.