kremsy
03.06.2012, 21:27
Hallo Leute,
Ich habe einen LM76 und 2 LM75 mittels I2C Bus an einen Atmega32 Angeschlossen.
Leider liefern mir die Bits D3-D6 immer ein High Signal, statt die Kommastelle.
Ist der Sensor Kaputt, oder an was könnte es noch liegen?
freundliche Grüße,
kremsy
if(SENSOR_1_AKTIV)
{
temp_sensor1.temp = (TWI_empf(ADRESSE_SENSOR1_R)<<1)|((dat2>>7)); //für LM76
temp_sensor1.komma= ((dat2>>3)&0b00001111)*10/16; //für LM76
_delay_ms(5);
}
if(SENSOR_2_AKTIV)
{
temp_sensor2.temp = TWI_empf(ADRESSE_SENSOR2_R); //Für LM75
temp_sensor2.komma= (dat2>>5)*10/8; //Für LM75
_delay_ms(5);
}
if(SENSOR_3_AKTIV)
{
temp_sensor3.temp = TWI_empf(ADRESSE_SENSOR3_R); //Für LM75
temp_sensor3.komma= (dat2>>5)*10/8; //Für LM75
}
Ich habe einen LM76 und 2 LM75 mittels I2C Bus an einen Atmega32 Angeschlossen.
Leider liefern mir die Bits D3-D6 immer ein High Signal, statt die Kommastelle.
Ist der Sensor Kaputt, oder an was könnte es noch liegen?
freundliche Grüße,
kremsy
if(SENSOR_1_AKTIV)
{
temp_sensor1.temp = (TWI_empf(ADRESSE_SENSOR1_R)<<1)|((dat2>>7)); //für LM76
temp_sensor1.komma= ((dat2>>3)&0b00001111)*10/16; //für LM76
_delay_ms(5);
}
if(SENSOR_2_AKTIV)
{
temp_sensor2.temp = TWI_empf(ADRESSE_SENSOR2_R); //Für LM75
temp_sensor2.komma= (dat2>>5)*10/8; //Für LM75
_delay_ms(5);
}
if(SENSOR_3_AKTIV)
{
temp_sensor3.temp = TWI_empf(ADRESSE_SENSOR3_R); //Für LM75
temp_sensor3.komma= (dat2>>5)*10/8; //Für LM75
}