Hi,
ich möchte einen Ultraschallsensor (SRF10), der über eine 
I2C-Schnittstelle Daten liefert, auslesen. Der Code ist schon fertig und 
es läuft alles. Ich möchte aber gerne mal verstehen, was da genau 
passiert.
Kann mir jemand einmal ganz knapp sagen, was im folgenden Code genau vor 
sich geht? Besonders die Funktion Makeint() ist mir noch sehr kryptisch.
| 1 | I2C_Start()
 | 
| 2 | I2C_Write(SlaveIdRead)
 | 
| 3 | MSB = I2C_Read_ACK()
 | 
| 4 | LSB = I2C_Read_NACK()
 | 
| 5 | I2C_Stop()
 | 
| 6 | 
 | 
| 7 | Entfernung = Makeint(LSB , MSB) 
 | 
| 8 | 
 | 
| 9 | Return Entfernung
 | 
| 10 | 
 | 
| 11 | End Sub
 | 
| 12 | 
 | 
| 13 | Sub Makeint(A As Byte , B As Byte) As Word
 | 
| 14 | Dim tmp As Word
 | 
| 15 | tmp = A 
 | 
| 16 | tmp << 7 
 | 
| 17 | tmp = tmp + B 
 | 
| 18 | Return tmp
 | 
| 19 | End Sub
 | 
MfG
Basti