Una pequeña precisión:
Para convertir la lectura del convertidor analógico de 10 bits hay que multiplicar por 5/1024. Es decir:
aux = value *(5/1023);
Efectivamente, la resolución es 5/1024 y la medida máxima 5/1024*1023, esto es, que aunque pongamos 5V, nuestra lectura nunca llegará a los 5V ya que se quedara un cuenta del convertidor (4.9mV) por debajo.