Arduino Voltmeter OLED Display

Arduino Voltmeter OLED Display

CIRCUIT DIAGRAM :

MATERIALS :

Arduino UNO/NANO/PRO-Mini
OLED Display
Voltage Sensor
Breadboar
Breadboard
Wires

CODE :

// Eliyas Science Info
// Arduino OLED Voltmeter

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define OLED_RESET A4

#define SSD1306_WHITE 1
#define SSD1306_BLACK 0
#define SSD1306_INVERSE 2

Adafruit_SSD1306 display(OLED_RESET);

int analogInput = A1; //Sensor Input

void setup() {
  pinMode(analogInput, INPUT);

  Serial.begin(9600);
  Serial.println("VOLTMETER");

  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);

  display.display();
  display.clearDisplay();

  display.display();

  display.drawRect(0, 0, 128 , 12, SSD1306_WHITE);
  display.setTextColor(SSD1306_WHITE, SSD1306_BLACK);
  display.setTextSize(1);
  display.setCursor(18, 3);
  display.println(" VOLTMETER ");
  display.display();
}

float vout = 0.0;
float vin = 0.0;

float R1 = 30000.0;
float R2 = 7500.0;

int value = 0;

void loop() {

  value = analogRead(analogInput);
  vout = (value * 5.0) / 1024.0;
  vin = vout / (R2 / (R1 + R2));

  Serial.print("INPUT Voltage= ");
  Serial.println(vin, 2);

  display.setTextSize(2);
  display.setCursor(20, 15);
  display.println(vin, 2);
  display.setCursor(80, 15);
  display.println("V");
  display.display();

  delay(1000);
}

ELIYAS SCIENCE INFO ©

Comments

Popular posts from this blog

Arduino MPU6050 Digital Spirit Level Measuring Device

Arduino Timer Control Relay Devices

Arduino Secret Knock Pattern Door Lock