-         

Ergebnis 1 bis 5 von 5

Thema: Compile Fehler bei Schrittzahl Richtung i2c

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    28.07.2007
    Ort
    Roboland
    Alter
    41
    Beiträge
    70

    Compile Fehler bei Schrittzahl Richtung i2c

    Anzeige

    Hallo schönen Abend !

    Ich hab in meinem Compiler den Fehler bei der Schrittzahl (1000) kann mir jemand die Zeile ausbessern und eventuell auch mal durch den Compiler testen es sollte ja auch funktionieren.

    Danke

    Code:
     
    
    $regfile = "m128def.dat"                                    ' Bei Mega 128
    
    $framesize = 32
    $swstack = 32
    $hwstack = 64
    
    
    $crystal = 16000000
    $baud = 9600
    Config Scl = Portd.0
    Config Sda = Portd.1
    Config I2cdelay = 10
    
    I2cinit
    Start Adc
    Sound Portg.2 , 400 , 450
    Sound Portg.2 , 400 , 250
    Sound Portg.2 , 400 , 450
     ' ---------------------------------------------------
    Const Befehl_motor_an_aus = 50
    Const Befehl_ausschalten = 51
    Const Befehl_drehrichtung = 52
    Const Befehl_geschwindigkeit = 53
    Const Befehl_endlosdrehung = 54
    Const Befehl_schrittzahl = 55
    
    
    
    
    Const Motor_1 = 1
    Const Motor_2 = 2
    Const Motor_3 = 3
    
    
    Const I2crnmotorslaveadr = &H58                             'I2C SlaveAdresse von RN-Schrittmotor Erweiterung
    
    
    Dim I2cdaten(7) As Byte
    Dim Lowbyte As Byte
    Dim Highbyte As Byte
    Dim Richtung As Bit
    
    
    Dim Schritte As Long
    Dim Temp As Byte
    Dim Ltemp As Long
    Dim Umdrehungen As Single
    Dim Fahrstrecke As Word
    
    Dim Geschwindigkeit As Byte
    
    
    
    
    
    Richtung = 0
    Geschwindigkeit = 10
    
      Do
    
    
      Wait 2
    
         I2csend I2crnmotorslaveadr , I2cdaten(1) , 7
      I2cdaten(1) = Befehl_geschwindigkeit
      I2cdaten(2) = Motor_3
      I2cdaten(3) = Geschwindigkeit
      I2cdaten(4) = 12
    
        I2csend I2crnmotorslaveadr , I2cdaten(1) , 7
      Toggle Richtung
      I2cdaten(1) = Befehl_drehrichtung
      I2cdaten(2) = Motor_1
      I2cdaten(3) = Richtung
    
        I2csend I2crnmotorslaveadr , I2cdaten(1) , 7
      I2cdaten(1) = Befehl_schrittzahl
      I2cdaten(2) = Motor_3
      I2cdaten(3) = 1000
      I2cdaten(4) = Lowbyte
      I2cdaten(5) = Highbyte
    
    Loop
    End

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Du wirst da nur eine Zahl zwischen 0 und 255 (ein Byte) eingeben können.

    Gruß

    Rolf

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    28.07.2007
    Ort
    Roboland
    Alter
    41
    Beiträge
    70
    Die Zeile sollte eigendlich die Schrittzahl beinhalten !

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Wenn ich die Anleitung richtig interpretiere, gibst du in Byte 3 das Low_Byte und in Byte 4 das High-Byte der Schrittzahl ein.
    Für deine 1000 musst du also
    I2cdaten(1) = Befehl_schrittzahl
    I2cdaten(2) = Motor_3
    I2cdaten(3) = 232
    I2cdaten(4) = 3

    Gruß

    Rolf

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    28.07.2007
    Ort
    Roboland
    Alter
    41
    Beiträge
    70
    Danke der Fehler ist weck !
    Neus Problem unter Bascom Programmierung - Von mega 128 über I2C nach Schrittmotor

    Es wird schon Funktionieren irgendwann mal die Hoffnung ist groß und aller Anfang schwer!


Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •