LM75 Störung

Gast #35658
Lesenswert?

Hallo Leute,

ich habe gestern einen LM75 Temperatursensor an einen AT90S8517 gehängt.
Leider kann ich die Temperatur nicht korrekt auslesen. Der LM75 gibt mir 
jedesmal einen komplett anderen Wert zurück.

Die Anderen Register im LM75 (z.B. das Tos) kann ich aber Problemlos 
lesen und schreiben.

Hat jemand schon Erfahrungen mit diesem Phänomen gemacht?
Gast #35660
Lesenswert?

angenommen data[0] ist erstes byte und data[1] ist zweites byte

unsigned char sign;
if(data[0]>127){
 data[0]=0xff-data[0];
 data[0]++;
 sign = 1;
}
if((data[1]&0x80)) data[1] = 5; else data[1] = 0;
usart_sendint((unsigned int) data[0]);
usart_sendint((unsigned int)data[1]);
Gast #35661
Lesenswert?

bist du dir sicher, dass das ein Software Problem ist? Ich habe mal den 
AD7416 von Analog Devices verwendet und da konnte ihc die Temperatur 
auch nicht korrekt auslesen (die Werte wariierten sehr stark: ca 
5-10°C). als ich dnn im Datenblatt geschaut hab, hab ich gesehen, dass 
mn unbedinnkt einen 10µF elko und ein 100nF Keramikkondensator o. ä. von 
Vcc auf GND der Versorgungsspanung des Sensors schalten muss. Als ich 
dass dann so gemacht habe hat es super funktioniert und die Temperatur 
war richtig.

mfG,
Mike
Gast #35662
Lesenswert?

Habe änliche Probleme,

ich kann die Temperatur auslesen, allerdings die variiert zu stark.
Wenn ich den LM75 mit der Hand erwärme geht die Temperatur sofort nach
oben und schwankt. Hier eine Auszug aus dem Terminal im Abstand von
einer Senkunde:

Man Sieht dass er von einer Sekunde auf die andere um 4 °C und mehr
springt. Was könnte das sein?



Temp:___19
Temp_0,5:___255

Temp:___19
Temp_0,5:___247

Temp:___23
Temp_0,5:___255

Temp:___23
Temp_0,5:___255

Temp:___25
Temp_0,5:___251

Temp:___25

2c_start();
i2c_WR_byte((address<<1)|0x01);//send address to rd modus

 value_0=i2c_RD_byteAck();
 value_1=i2c_RD_byteNak();
 i2c_stop();

 sprintf(s, "\r\nTemp:___%d", value_0); uart_printstr( &s[0]);
 sprintf(s, "\r\nTemp_0,5:___%d\r\n", value_1); uart_printstr(
&s[0]);

Danke im Voraus!

Andreas

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren