Intenté hacer un sistema de detección utilizando arduino UNO R3 con sensor LM35 y una unidad de visualización de siete segmentos con dos dígitos.
Hice todas las conexiones de la siguiente manera (sé que es Missy pero creo que el cableado es correcto):
ytratédehaceresteprogramaperonofuncionó:
intanalogPin=3;//potentiometerwiper(middleterminal)connectedtoanalogpin3//outsideleadstogroundand+5Vintval=0;//variabletostorethevaluereadbyteseven_seg_digits[10][7]={{1,1,1,1,1,1,0},//=00{0,1,1,0,0,0,0},//=01{1,1,0,1,1,0,1},//=02{1,1,1,1,0,0,1},//=03{0,1,1,0,0,1,1},//=04{1,0,1,1,0,1,1},//=05{1,0,1,1,1,1,1},//=06{1,1,1,0,0,0,0},//=07{1,1,1,1,1,1,1},//=08{1,1,1,0,0,1,1},//=09};voidsetup(){Serial.begin(9600);//setupserialpinMode(0,OUTPUT);pinMode(1,OUTPUT);pinMode(2,OUTPUT);pinMode(3,OUTPUT);pinMode(4,OUTPUT);pinMode(5,OUTPUT);pinMode(6,OUTPUT);pinMode(7,OUTPUT);pinMode(8,OUTPUT);pinMode(9,OUTPUT);pinMode(10,OUTPUT);pinMode(11,OUTPUT);pinMode(12,OUTPUT);pinMode(13,OUTPUT);}voidloop(){val=analogRead(analogPin);//readtheinputpinfloattemp=val*5;//calculatingthevoltagetemp/=1024;//calculatingthevoltagetemp=(temp)*100;//as1V/100cintpin=0;//forfirstsevensegmentpins0,1,2,3,4,5,6isconnectedwitha,b,c,d,e,s,gintpin1=7;Serial.println("temperature in C =");Serial.println(temp); // debug value
int tempL; //low number
tempL=int(temp*10);
int tempH;//high number
tempH=int(temp/10);
for(int j=0;j<7;j++)
{
digitalWrite(pin,seven_seg_digits[tempL-1][j]);
pin++;}
for(int i=0;i<7;i++)
{
digitalWrite(pin1,seven_seg_digits[tempL-1][i]);
pin1++;}
delay(2000);
}
Tengo un problema de arrastre: 1- pin 0 y pin 1 siempre alto. 2- cuando calculo la temperatura de convertir el número devuelto a voltio, luego a la temperatura normal, tuve una respuesta incorrecta como la que veo en el monitor y el número de la pantalla también es incorrecto, el número que aparece no se corresponde incluso con
cuando veo la salida de LM35 usando un medidor de voltaje, veo 0.3 [v] que es sensible porque es verano y la temperatura es aproximadamente 30 aquí en el Medio Oriente.
este video grabador en vivo (disculpe mi mal inglés) para explicar más: enlace
y espero que alguien pueda explicar sobre "compensación" que este enlace hable sobre.