-         

Ergebnis 1 bis 3 von 3

Thema: i2c low-byte high-byre

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    13.06.2005
    Beiträge
    20

    i2c low-byte high-byre

    Anzeige

    Hallo,

    kann mir bitte jemand helfen ich habe folgendes Problem.

    Ich habe RN-Control über I2C mit rn-motor verbunden.
    Das klappt alles und ist prima.

    Nun will ich meinen Schrittmotor eine definierte Schrittzahl drehen lassen, die mehr ist als 256.
    Also muß ich doch aus meiner Variabel “schritte” (word) zwei Bytes machen um sie an die
    I2C Routine zu übergeben.

    Mit meiner Unkenntnis und der Anleitung zum rn-motor habe ich ein Programm geschrieben.
    Hier die entsprechenden Stellen.

    Schritte = 321

    Schritte_low = Schritte Mod 256
    Schritte_high = Schritte / 256


    'Anzahl Schritte Drehen
    I2cdaten(1) = 10
    I2cdaten(2) = Befehl_schritte_drehen
    I2cdaten(3) = Low(schritte_low)
    I2cdaten(4) = High(schritte_high)
    I2csend I2crnmotorslaveadr , I2cdaten(1) , 5
    I2cstop




    Bitte sagt mir was da falsch ist.

    Gruß Rille

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Das ist doppelt gemoppelt, wie man so sagt.
    Mach es (einfach) so:
    Code:
    DIM Schritte_lo as byte
    DIM Schritte_hi as byte
    DIM Schritte as word at Schritte_lo overlay
    
    
    Schritte = 321 
    
    'Anzahl Schritte Drehen 
    I2cdaten(1) = 10 
    I2cdaten(2) = Befehl_schritte_drehen 
    I2cdaten(3) = schritte_lo
    I2cdaten(4) = schritte_hi
    I2csend I2crnmotorslaveadr , I2cdaten(1) , 5 
    I2cstop
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    13.06.2005
    Beiträge
    20
    Hallo Robert

    danke für deine Hilfe.
    Läuft alles prima.

    Gruß Rille

Berechtigungen

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