#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 32
#define OLED_RESET 4
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
const int sensor_t = A1;
float data_sensor_t = 0;
float var_celcius = 0;
float var_kelvin = 0;
float var_fahenheit = 0;
const int tombol_1 = 4;
const int tombol_2 = 3;
const int tombol_3 = 2;
const int led_merah = 12;
const int led_kuning = 11;
const int led_hijau = 10;
void tampilkan_di_lcd(){
display.print("data sensor t: ");
display.println(data_sensor_t);
display.print("Temp: ");
display.print(var_celcius);
display.println(" C");
display.print("Temp: ");
display.print(var_kelvin);
display.println(" K");
display.print("Temp: ");
display.print(var_fahenheit);
display.println(" F");
}
float celcius(float var_1){
return (500.00/1023.00)*var_1;
}
void setup() {
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println(F("SSD1306 allocation failed"));
for(;;); // Don't proceed, loop forever
}
pinMode(sensor_t, INPUT);
pinMode(tombol_1, INPUT_PULLUP);
pinMode(tombol_2, INPUT_PULLUP);
pinMode(tombol_3, INPUT_PULLUP);
pinMode(led_merah, OUTPUT);
pinMode(led_kuning, OUTPUT);
pinMode(led_hijau, OUTPUT);
}
void loop() {
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0,0);
tampilkan_di_lcd();
for (int i = 0; i < 50; i++){
data_sensor_t += analogRead(sensor_t)/50;
}
var_celcius = celcius(data_sensor_t);
// var_kelvin = kelvin(var_celcius);
// var_fahenheit = fahrenheit(var_celcius);
display.display();
}