Nachdem ich nun drei Wochen in England war, habe ich endlich wieder Zeit, am Roboter weiter zu bauen.
Deshalb habe ich mir erstmal den cmps03 vor geknüpft, da ich diesen dringend brauche.
Um zu vermeiden, dass eventuelle Schaltungsfehler da sind, habe ich einen atmega8 verwendet, an den sonst nur drei LEDs und die ISP Buchse angeschlossen ist. Leider geht es nicht Sobald ich den SCL-Port verbinde bleibt das Programm einfach stehen und es passiert nichts mehr

Hat jemand ne Idee, oder muss ich mir nen neuen kaufen? Die sind so verdammt teuer...

Vielen Dank,
jon

EDIT:
Der Quellcode (Die Funktion zum Auslesen ist aus der Wiki):
Code:
Declare Function Rn_cmps_himmelsrichtung() As Word

'Die Standartdefinitionen am Anfang eines jeden Programms
$regfile = "m8def.dat"
$hwstack = 32
$framesize = 32
$swstack = 32

$crystal = 11059200                                         'Quarzfrequenz
$baud = 19200                                               'Baud-Rate
Baud = 19200

Config Scl = Portd.0                                        'Ports fuer IIC-Bus
Config Sda = Portd.1

Dim Himmelsrichtung As Word
Dim V As Byte


Config Portd.2 = Output                                     'rote LED
Portd.2 = 1                                                 'LED aus

' ########################################################################
' ###### Hauptproggi
' ########################################################################

Waitms 100
V = 1

Do
   Waitms 250
     Himmelsrichtung = Rn_cmps_himmelsrichtung()
   V = V + 3
   Toggle Portd.2
   Waitms 250
Loop

End

Function Rn_cmps_himmelsrichtung() As Word
Local Lob As Byte
Local Hib As Byte
Local Cmps_slaveid As Byte
Local Cmps_slaveid_read As Byte

   Cmps_slaveid = &HC0
   Cmps_slaveid_read = Cmps_slaveid + 1

   'Register auswählen
   I2cstart
   I2cwbyte Cmps_slaveid
   I2cwbyte 2
   I2cstop

   I2cstart
   I2cwbyte Cmps_slaveid_read
   I2crbyte Hib , Ack
   I2crbyte Lob , Nack
   I2cstop

   Rn_cmps_himmelsrichtung = Makeint(lob , Hib)
End Function