Esta función nos permite para hacer el uso del control de valores, por ejemplo, tenemos un punto A y un punto B, tenemos el variador X, que se movera según sea el aumento de que le demos. Un ejemplo más claro es de un PWM donde tenemos de 0 a 255, el variador X tendra el valor según donde lo movemos.
X
V
A-------------------------------------------------B
Esta función es muy utíl, ya que por ejemplo la función FOR si tenemos de 0 a 255, y queremos que incremente, la función FOR
incrementará pero si llega a 255 volverá a 0 e incrementerá; con esta función al momento que incremente y si llega al valor máximo, ya no incrementará.
int led = 10;
int kuro;
int incremento = 0;
int dato;
void setup(){
pinMode(led, OUTPUT);
Serial.begin(9600);
}
void loop(){
dato = Serial.read();
if (dato == 'a'){
incremento++;
incremento = constrain(incremento, 0, 255);
analogWrite(led, incremento);
Serial.println(incremento);
delay(10);
}
if (dato == 's'){
incremento--;
incremento = constrain(incremento, 0, 255);
analogWrite(led, incremento);
Serial.println(incremento);
delay(10);
}
}