x: the number to constrain Allowed data types: all data types. a: the lower end of the range. Allowed data types: all data types. b: the upper end of the range. Allowed data types: all data types.
Returns
x: if x is between a and b.
a: if x is less than a.
b: if x is greater than b.
Example Code
The code limits the sensor values to between 10 to 150.
sensVal = constrain(sensVal, 10, 150); // limits range of sensor values to between 10 and 150
Notes and Warnings
Because of the way the constrain() function is implemented, avoid using other functions inside the brackets, it may lead to incorrect results.
This code will yield incorrect results:
int constrainedInput = constrain(Serial.parseInt(), minimumValue, maximumValue); // avoid this
Use this instead:
int input = Serial.parseInt(); // keep other operations outside the constrain function
int constrainedInput = constrain(input, minimumValue, maximumValue);
See also
Title
Arduino Newsletter
We care about the privacy and personal data of our users.
To continue, please give us your consent:
Please confirm that you have read the privacy policy
Thank you for subscribing!
Curious to learn more?
Are you also a teacher, student, or professional that loves using Arduino in your day-to-day activities?
Then keep up-to-date with either our STEM or Professional monthly newsletters.
Arduino weekly newsletter (already subscribed)
Educators can benefit from the ever growing tech that shapes our environment through fun cool projects.
Why not awe your boss with highly innovative ways to help keep your enterprise connected at no extra cost?
Arduino Survey
We'd like to get to know you little better.
Please help us improve by answering this super short optional survey.