This code reads the voltage off of analog pin zero (A0) on an Arduino and displays it to an oled.
I'll document this more, maybe. For now, look at the code.
The voltage divider is a 47k connected to the positive rail of the supply to be measured, and a 22k connected to the negative side. There's one wire with a positive voltage going to the input pin, and the ground is already shared with the power supply being measured.
I calculated the maximum voltage this can measure to be 15.682. This is because the top limit the Arduino can measure is 5v. So when the voltage is at 15.682, the voltage divider divides it down to 15.682. Of course, there are variances in resistors. After measuring the voltage with a multimeter, I adjusted the number slightly in the code.
An Arduino Pro Mini can consume microwatts if the LEDs are disabled and the Low Power lib is used. But there are other things to consider:
The OLED display consumes 3-10mA, depending on how much is lit up. Milliamps are big when something's running off of a battery full-time. Perhaps the display could be off most of the time, with a push button used to command the Arduino to power up and refresh the display.
Even with a 47k and 22k combo, the voltage divider still lets .19mA of current flow. That's 190µA - not too bad, but still significant. Could use a transistor to turn this off when the Arduino isn't reading it. Not 100% sure if this would equate to less power consumption, but probably.
Here's all the deets on the Adafruit GFX lib that writes text to the display: https://learn.adafruit.com/adafruit-gfx-graphics-library/graphics-primitives
The guide I used for the display setup: https://randomnerdtutorials.com/guide-for-oled-display-with-arduino/
Voltage divider calculator: http://www.ohmslawcalculator.com/voltage-divider-calculator