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?
wie genau liest du die temperature aus poste mal deinen code dekodierst du die 2 werte richtig ?
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]);
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
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.