Hi!

Hab meine C-.Control seit monaten ausgepackt weil ich ultra viel zu tun hatte

Ich hab alle kabel zu den Ports angeschlossen und auf start gedrückt... hat sich nichts gerührt ...
ich hab den SDA an Port1 und SCL an Port2 gehängt und andersrum .. nicht hat sich gerührt ..


dann bin ich drauf gekommen das ich SDA an 5v und SCL an port1 gehängt hab und dann andersrum

kann der SD20 chip dadurch defekt werden? habs noch immer nicht zum laufen bekommen

Code:
'***********************************************************
'*  Ansteuerung von bis zu 20 Servos mit dem SD20          *
'*  über den I2C Bus.                                      *
'*  das Programm dreht den Servo am Servo PIN 1 des SD20   *
'*  und liest den Register 0 (Version) um die Vorgänge     *
'*                   zu demonstrieren.                     *
'*                 (ohne Expanded Mode)                    *
'***********************************************************

'*********** Ports für den I2C Bus**************************
define SDA Port[15]
define SCL Port[16]

define I2C_Daten byte
define N byte 'Schleifenvariable
define Startbyte byte
define Kommandobyte byte
define ServoNummer byte
define ServoWinkel byte

'I2C Bus Ruhezustand
SDA=ON
SCL=ON

'*********** Hauptprogramm********************************
#Main

 Get Startbyte                                            ' Startbyte von der seriellen Schnittstelle
  If Startbyte <> 97 Then Goto Main                       ' Schleife, solang bis ein Startbyte empfangen wurde
  If Startbyte = 97 Then Goto KlasseA                     ' falls Kommandobyte = asci(97)="a" springe zur #KlasseA
  
#KlasseA                                                  ' Klasse A: Servodirektsteuerung
 get ServoNummer                                          ' Nummer des anzusteuernden Servos von der seriellen Schnittstelle empfangen
 get ServoWinkel                                          ' Winkel des anzusteuernden Servos von der seriellen Schnittstelle empfangen
 Gosub ServoStellen
Goto Main


#ServoStellen
 gosub I2C_Start                                          ' I2C-Startbedingung
 I2C_Daten=194                                            ' Adresse des SD20 am I2C Bus
 gosub I2C_Write                                          ' Adresse übertragen
 I2C_Daten = ServoNummer                                  ' Register des Servos, der  angesprochen werden soll schreiben 
 gosub I2C_Write                                          ' Register übertragen
 I2C_Daten = ServoWinkel                                  ' Winkel auf den dieser Servo drehen soll schreiben
 gosub I2C_Write                                          ' Winkel schreiben
 gosub I2C_Stop                                           ' I2C-Stopbedingung.
Return

'*********** I2C Bus Standard Routinen********************

#I2C_Start
 SDA=OFF
 SCL=OFF
return

#I2C_Stop
 SDA=OFF
 SCL=ON
 SDA=ON
return

#I2C_Write
 for N=1 to 8                                               ' 8 Bit schreiben in For-Next-Schleife
  SDA=OFF
  if (I2C_Daten and 128) =128 then SDA=ON
  pulse SCL
  I2C_Daten=I2C_Daten shl 1                                  
 next
 pulse SCL
Return

#I2C_Read
 I2C_Daten=0
 deact SDA
 for n=1 to 8                                               ' 8 Bit lesen in For-Next-Schleife
   I2C_Daten=I2C_Daten shl 1
   SCL=ON
   if SDA then I2C_Daten=I2C_Daten+1
   SCL=OFF
 next
Return

#Ack
 SDA=0
 pulse SCL
return

#NoAck
 SDA=1
 pulse SCL
return