The full code is like this:
// define values here:
#define a 600000 // 1000000us * 60 s/m /100rpm
#define b 300000 // 1000000 * 60/200
#define c 200000 // 1000000 * 60/300
#define pin 5 // the digital pin to read pulse duration
#define GREENLED 10 // Digital pin nomber
#define YELLOWLED 11 // Digital pin nomber
#define REDLED 12 // Digital pin nomber
// custom project variables:
unsigned long duration;///< pulse duration, the length of the pulse (in microseconds) or 0 if no pulse is completed before the timeout (unsigned long)
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(GREENLED, OUTPUT);
pinMode(YELLOWLED, OUTPUT);
pinMode(REDLED, OUTPUT);
// serial port init
Serial.begin(115200);//115200 baud!!!
}
// the loop function runs over and over again forever
void loop()
{
duration = pulseIn(pin, HIGH);
// reset leds
digitalWrite(GREENLED, LOW);
digitalWrite(YELLOWLED , LOW);
digitalWrite(REDLED , LOW);
// set leds
if(duration < a){digitalWrite(GREENLED, HIGH);}
else if(duration < b){digitalWrite(YELLOWLED , HIGH);}
else{digitalWrite(REDLED , HIGH);}
// pause
delay(200); //ms
}