Zitat Zitat von linux_80
Hallo,

schreib einfach eine Function der Du die SlaveAdresse des gewünschten Sensors mitgibst.
Sorry, kann dir gerade nicht ganz folgen. Weiß nich genau was du meinst...

Das Program sieht im prinzip so aus:

Code:
#include <avr/io.h> 
#include "i2cmaster.h" 
#define GETTEMP 0xAA 				
#define I2CTHERMO 0x90 				
#define STARTCONVERT 0xEE 			

int main(void) { 					
   char TemperaturVK;
   char TemperaturNK; 
   DDRD = (1<<PD5)|(1<<PD6);		
   i2c_init();
   i2c_start(I2CTHERMO+I2C_WRITE);	 
   i2c_write(STARTCONVERT); 		
   i2c_stop(); 
   for(;;) { 
      i2c_start_wait(I2CTHERMO+I2C_WRITE); 
      i2c_write(GETTEMP); 			
      i2c_rep_start(I2CTHERMO+I2C_READ); 
      TemperturVK = i2c_readAck();
      TemperturNK = i2c_readNak();
      i2c_stop(); 
      if (TemperturVK[0] >= 25) 		
         PORTD =(1<<PD5); 			
      else 							
         PORTD =(1<<PD6); 			
     } 
     return 0; 
}
Und will einen 2. Sensor hinzufügen