Browse Source

simple voltmeter: 0 to reference 5 V

Fabian Peter Hammerle 4 months ago
parent
commit
cfd45687d3
1 changed files with 8 additions and 2 deletions
  1. 8 2
      arduino-sketch.ino

+ 8 - 2
arduino-sketch.ino

@@ -2,6 +2,9 @@
 
 #include "version.h"
 
+const long REFERENCE_VOLTAGE_mV = 5000;
+const long ANALOG_READ_MAX = 2 << 10 - 1;
+
 const uint8_t DISPLAY_WIDTH = 128;
 const uint8_t DISPLAY_HEIGHT = 64;
 // https://startingelectronics.org/tutorials/arduino/modules/OLED-128x64-I2C-display/
@@ -25,13 +28,16 @@ void setup() {
     display.println(PROJECT_VERSION);
     display.display();
     delay(2000);
-    display.setTextSize(5);
+    display.setTextSize(4);
 }
 
 void loop() {
     display.clearDisplay();
     display.setCursor(0, 0);
-    display.print(analogRead(A0));
+    display.println(
+        (long)analogRead(A0) * REFERENCE_VOLTAGE_mV / ANALOG_READ_MAX
+    );
+    display.print("mV");
     display.display();
     delay(100); // ms
 }