Paso 2: código
El ATtiny2313 sólo tiene 2000 bytes de memoria flash disponible, pero este esbozo tiene 2572 bytes.
¿Cómo hacemos para que todo lo que existe?
Nos comente toda la comunicación serial en el bosquejo.
Las 3 líneas de código tomaron un enorme 1438 bytes de flash que no se usan en el proyecto terminado de todos modos.
Utilizar la comunicación serial cuando se prueba con la placa Arduino.
Más adelante cuando se transfiere el bosquejo para el ATtiny2313, comentar la salida serial.
Con la serie comentada y el código que añadimos para este proyecto el tamaño de dibujo sólo será total 1324 bytes.
Gran estamos desafiante bajo el límite máximo de 2000 bytes.
Este sketch es de ladyada, pero tiene un retraso de 2 minutos añadir por mí.
/ * Probador de sensor PIR * /
int ledPin = 9; Número de Pin del chip es 12. elige el pin para el LED
int inputPin = 11; Número de Pin del chip es de 14. elegir la clavija de entrada (para el sensor PIR)
int pirState = bajo; Empezamos suponiendo que no hay movimiento detectado
int val = 0; variable para lectura del estado del pin
void setup() {}
pinMode (ledPin, salida); declarar el LED como salida
pinMode (inputPin, entrada); declarar el sensor como entrada
Serial.Begin(9600);
}
void loop() {}
Val = digitalRead(inputPin); leer valor de entrada
Si (val == HIGH) {/ / comprobar si la entrada es alta
digitalWrite (ledPin, HIGH); encender LED
Si (pirState == LOW) {}
sólo nos hemos convertido
Serial.println ("movimiento de detectado!");
Sólo queremos imprimir en el cambio de la salida, no estado
pirState = alto;
Delay(120000); <<<<<<<<<<< Este retraso fue agregado que nos da el minuto 2 LED en tiempo - cambio según sea necesario
}
} else {}
digitalWrite (ledPin, LOW); Apague el LED
Si (pirState == HIGH) {}
simplemente hemos convertido de
Serial.println ("movimiento que terminó!");
Sólo queremos imprimir en el cambio de la salida, no estado
pirState = bajo;
}
}
}