#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // OLED width, in pixels
#define SCREEN_HEIGHT 64 // OLED height, in pixels
Adafruit_SSD1306 oled(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
int so2 = 35;
int lk = 0;
int lg = 15;
int lr = 2;
int Do2;
float o2 = 0.00;
void setup() {
Serial.begin(9600);
pinMode(lr, OUTPUT);
pinMode(lg, OUTPUT);
pinMode(lk, OUTPUT);
if (!oled.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println(F("failed to start SSD1306 OLED"));
while (1);
}
delay(200); // wait two seconds for initializing
oled.clearDisplay(); // clear display
oled.setTextSize(1); // set text size
oled.setTextColor(WHITE); // set text color
oled.setCursor(4,7); // set position to display (x,y)
oled.println("WELCOM"); // set text
oled.display(); // display on OLED
delay(1000);
oled.clearDisplay();
}
void loop() {
Do2 = analogRead(so2);
o2 = (Do2 * 1.40) / 4095;
Serial.print("S.OKs=");
Serial.print(Do2);
Serial.print(" ");
Serial.print(o2);
Serial.println("v ");
delay(200);
if (o2 >= 0.70)
{
digitalWrite(lr, HIGH);
digitalWrite(lg, LOW);
}
else if (o2 > 0.30 && o2 < 0.70)
{
digitalWrite(lr, LOW);
digitalWrite(lg, HIGH);
}
else if (o2 > 0 && o2 <0.30)
{
digitalWrite(lg, HIGH);
digitalWrite(lr, HIGH);
}
else
{
digitalWrite(lr, LOW);
digitalWrite(lg, LOW);
}
}