Was wird denn jetzt genau angezeigt?
Druckbare Version
Was wird denn jetzt genau angezeigt?
Die Anzeige lautet 37265....
also funktioniert ja scheinbar der I2C, nur weis ich jetzt immer noch nicht wie der Code GENAU aussieht. Poste doch bitte mal Deinen ganzen Code, mit jedem Komma und Punkt von der ersten bis zur letzten Zeile. So sieht man ja nix und Glaskugel habe ich noch keine.
So. Hier jetzt der ganze Code....
$regfile = "M8def.dat"
$crystal = 8000000
$hwstack = 32
$swstack = 10
$framesize = 40
$lib "i2c_twi.lbx"
Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0
Config Lcd = 16 * 3 , Chipset = Dogm163v5
Config Lcdbus = 4
Cls
Config Sda = Portc.4
Config Scl = Portc.5
Config Twi = 100000
Twbr = 12
I2cinit
Const Ad7746w = &H90
Const Ad7746r = &H91
Dim Highb As Byte , Midb As Byte , Lowb As Byte , Wert As Word At Highb Overlay
Dim I As Byte
Do
I2cstart
I2cwbyte Ad7746w
I2cwbyte 1
I2cwbyte Ad7746r
I2crbyte Highb , Ack
I2crbyte Midb , Ack
I2crbyte Lowb , Nack
I2cstop
Locate 1 , 2
Lcd "Wert: " ; Wert
Locate 2 , 1
Lcd Highb ; " " ; Midb ; " " ; Lowb
Locate 3 , 1
Lcd I
Waitms 500
Loop
End
hmmm.... sieht soweit ok aus, würde aber zwischen "i2cwbyte 1" und dem senden Readadress "i2cwbyte Ad7746r" noch einen "i2cstart" setzen.
Ansonsten kann ich mir nur noch vorstellen, das die Initialisierung vom Sensor nicht richtig ist und er einen andere Inizialisierung will.