Go Down

Topic: Problema con la lectura Analógica enArduino Uno de una funte de 12V(Solucionado) (Read 1 time) previous topic - next topic

iceray

Hola buenas, soy nuevo en el foro, e estado buscando por google y por aquí y e encontrado algunas soluciónes que e probado, pero no me han solucionado el problema.
El problema que tengo es que, desde una fuente de alimentación de 12v y realizando un divisor resistivo, consigo una salida de 4,8 V que va a la entrada analogica de arduino. Hasta aquí bien, pero, el problema lo tengo cuando intento ver el monitor serial de esa entrada analógica que me varía mucho pero sobre todo se queda en 0 y en 1024... no se que hacer.  Saludos y gracias de antemano.

Cheyenne

Si al menos pones el código tendremos algo por donde empezar a investigar.

American2020

¿Los 4.8 que obtienes los has conectado al AREF?

PD: ¿Estás usando un potenciómetro también cierto?
My 3x3x3 Led Cube

[url=http://arduino.cc/forum/index.php/topic,1642

iceray

Hola disculpad soy nuevo y aun no tengo claro como se hacen las preguntas aquí. Seguramente habrá un post sobre eso.
Aquí os dejo el código usado, como vereis es el mas simple para ver que leo en la entrada analógica.

int analogPin = 4;     
                     
int val;           
void setup()
{
  Serial.begin(9600);         
}

void loop()
{
  val = analogRead(analogPin);   
  Serial.println(val);     
delay(1000);

}


En el monitor serial los valores que me da son:

1023
1023
1023
1023
1023
1023
0
0
0
0
0
0

Estos valores me los dá teniendo una tensión en la entrada analógica 4,8v medidos en el divisor resistivo.
Los 4,8v no los e conectado a AREF, ya que va a variar todo el rato porque la fuente externa que uso es de 2 a 30 v regulado por un potenciometro.

Aquí os dejo un esquema de como está conectado.



indio99

Hola, Arduino convierte las entradas analógicas a digital, para poder leerlas, con una resolución de 1024, así que el valor de entrada analógico, el sólo lo convierte a digital
para poder leerlo tú, es decir, para que tu entiendas lo que te está mostrando, tienes que convertir ese valor digital (de 0 a 1023) a un valor comprendido entre 0 y 5 , para hacerlo nada más sencillo que esto

int analogPin = A4;     
                     
int val; 
float vIn;         
void setup()
{
  Serial.begin(9600);     
    pinMode (analogPin = INPUT);     
}

void loop()
{
  val = analogRead(analogPin);
  vIn = val * (5/1024);  
  Serial.println(vIn);     
delay(1000);

}


Así debería de funcionarte, bueno yo también estoy recien empezando con ésto, y lo mismo me equivoco en algo ;)

Saludos

Go Up