Forum: Mikrocontroller und Digitale Elektronik Hysterese in LM75 umschreiben


von al_dente (Gast)


Lesenswert?

Hallo,

ich versuche gerade bei einem LM75 (per I2C-Bus) die Temperaturschwellen 
TOs und THyst zu ändern. Laut Datenblatt müsste das z.B. so gehen:
1
bit a;
2
3
I2C_Start();           //Startbedingung
4
5
a = I2C_Write(0x9E);   //Adresse zum Schreiben
6
a = I2C_Write(2);      //Adresse für THyst
7
a = I2C_Write(17);     //Wert 17 °C
8
a = I2C_Write(0);      //keine Kommastelle
9
10
I2C_Stop();            //Stopbedingung

Die I2C_Write-Funktion dazu ist:

1
bit I2C_Write(unsigned char byte){
2
3
  bit a;
4
  unsigned char ref = 0x80; 
5
  int i;
6
7
  for(i = 0; i < 8; i++){     
8
    if(byte >= ref){
9
      sda = 1;
10
      wait();
11
      byte -= ref;
12
    }else{
13
       sda=0;
14
      wait();
15
    }
16
    ref /= 2;
17
18
    scl=1;   
19
    wait();
20
    scl=0;
21
    wait();
22
  }
23
24
  sda = 1;  
25
  wait();
26
  scl = 1;  
27
  a = !sda;
28
  wait();    
29
  scl = 0;
30
31
  return a;
32
}

Beim Auslesen bekomm ich immer nur die Defaultwerte, weiß jemand was ich 
da falsch mache?

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
Noch kein Account? Hier anmelden.