# Potentiometer Position

Hello,

I'm looking to display the position a potentiometer is set, which increases/decreases between 0.00 and 6.00 as it turns, like so: I know how to display the value between 0-1023, but I'm not too sure how to do display the position code wise.

Thanks

Linear interpolation.

y= m(x-x0) + b

where

x range is 0 to 1023
y range 0 to 6

where
x0 = input_min = 0 (as in 0 to 1023)
b = output_min = 0 (as in 0 to 6)
m = output_range/input_range = (output_max-output_min)/(input_max-input_min) = 6/1023

Get used to this formula if you expect to be converting from ADC to real world values.

Here is another method using the map function. Since map only works with integers you can’t get floats (numbers with decimal fraction parts). If you want 0 to 6.00 to 2 decimal places just map 0 to 1023 to 0 to 600 and divide by 100.0 to display 0 to 6.00.

This code illustrates the above.

``````#include <Wire.h>
#include <hd44780.h>                       // main hd44780 header
#include <hd44780ioClass/hd44780_I2Cexp.h> // i2c expander i/o class header

hd44780_I2Cexp lcd;

const byte potPin = A0;

const int LCD_COLS = 16;
const int LCD_ROWS = 2;

void setup()
{
Serial.begin(115200);
lcd.begin(LCD_COLS, LCD_ROWS);
lcd.print("Hello, World!");
delay(2000);
lcd.setCursor(0, 0);
}

void loop()
{
static unsigned long timer = 0;
unsigned long interval = 100;
if (millis() - timer >= interval)
{
timer = millis();
lcd.setCursor(0, 0);