
Descrición:
Imos facer que unhas instrucións se repitan un número determinado de veces. Por exemplo, imos acender e apagar un LED varias veces, agardamos un tempo e repetimos indefinidamente o proceso.
Para facer a repetición utilizamos a función de control
for(inicio;condición;modificador) { proceso }
Programas:
1.Faro 1
1. Faro 1: Cinco veces: Imos facer que un LED escintile 5 veces, descanse, e volva a repetir o mesmo unha e outra vez. Definimos a variable n para realizar o reconto e contamos 5 empezando en n=0 e rematando en 4 (n<5).
// Declaración de variables
int led = 13;
int tempo1 = 200; // Definimos a variable tempo entre acendido e apagado
int tempo2 = 2000; // Definimos a variable tempo entre secuencias
// Configuración
void setup() {
pinMode(led, OUTPUT);
}
// Programa
void loop() {
for (int n=0;n<5;n++){ // Repítese 5 veces (desde 0 ata 4) o seguinte:
digitalWrite(led, HIGH);
delay(tempo1);
digitalWrite(led, LOW);
delay(tempo1);
}
delay(tempo2); // agarda o tempo2 antes de repetir de novo o proceso
}
2. Faro 2
2. Faro 2: Definimos a variable “escintileos” para elixir ao principio do programa o número de veces que desexamos que se repita a acción. Fíxate que agora empezamos o reconto en n=1 e continuamos ata que n<=escintileos. Tamén se podería facer desde n=0 ata n<escintileos.
// Declaración de variables
int led = 13;
int tempo1 = 200; // Definimos a variable tempo entre acendido e apagado
int tempo2 = 2000; // Definimos a variable tempo entre secuencias
int escintileos=5; // Numero de escintileos que realiza o faro en cada secuencia.
// Configuración
void setup() {
pinMode(led, OUTPUT); // Configuramos o pin 13 como saída
}
// Programa
void loop() {
for (int n=1;n<=escintileos;n++){ // Repítese 5 veces o seguinte:
digitalWrite(led, HIGH);
delay(tempo1);
digitalWrite(led, LOW);
delay(tempo1);
}
delay(tempo2); // agarda o tempo2 antes de repetir de novo o proceso
}
Propostas:
- Outros tempos: Podes modificar o valor das variables tempo1 e tempo2 para obter outras frecuencias.
- 10 veces: Fai que o LED se acenda e apague 10 veces
- Activado por pulsador: Engade un pulsador coa súa resistencia no pin 2 e fai que cando prememos nel se acenda e apague o LED 5 veces.