int sensorValue; int num; void setup() { pinMode(2, OUTPUT); pinMode(3, OUTPUT); pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); pinMode(8, OUTPUT); pinMode(9, OUTPUT); Serial.begin(9600); // sets the serial port to 9600 } void loop() { sensorValue = analogRead(0); // read analog input pin 0 if (sensorValue < 400) // if there is little or no gas detected display blinking lights { digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(3, LOW); digitalWrite(8, HIGH); delay(500); digitalWrite(8, LOW); digitalWrite(6, HIGH); delay(500); digitalWrite(6, LOW); digitalWrite(3, HIGH); delay(500); } else { if (sensorValue >= 900) // the value of the gas measurement between 400 and 900 is displayed (this part refers to the cases below) {num = 9;} else if (sensorValue >= 800) {num = 8;} else if (sensorValue >= 700) {num = 7;} else if (sensorValue >= 600) {num = 6;} else if (sensorValue >= 500) {num = 5;} else if (sensorValue >= 400) {num = 4;} } if (sensorValue > 700) // if there is a lot of gas detected, the dot on the led display will blink { digitalWrite(5, HIGH); delay(100); digitalWrite(5, LOW); delay(100); } switch (num) { case 9: digitalWrite(2, LOW); digitalWrite(3, HIGH); digitalWrite(4, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); break; case 8: digitalWrite(2, HIGH); digitalWrite(3, HIGH); digitalWrite(4, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); break; case 7: digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, HIGH); digitalWrite(6, LOW); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); break; case 6: digitalWrite(2, HIGH); digitalWrite(3, HIGH); digitalWrite(4, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, LOW); break; case 5: digitalWrite(2, LOW); digitalWrite(3, HIGH); digitalWrite(4, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, LOW); break; case 4: digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, HIGH); digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, LOW); digitalWrite(9, HIGH); break; } }