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 nichtSobald 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







Zitieren

Lesezeichen