-
        

Ergebnis 1 bis 2 von 2

Thema: Probleme mit der kommerziellen Version der I2Cslave Library

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    15.04.2007
    Beiträge
    55

    Probleme mit der kommerziellen Version der I2Cslave Library

    Anzeige

    Hallo

    Ich benutze die Kommerzielle Version von der MCS I2cslave library um Daten von den master zum slave su senden. Beide Platinen sind mit den Atmega2561 bestückt.

    Ich habe nun den code im Master etwas geändert so das die Bytes immer im Interval von 10 Sekunden gesendet werden, und sie da, der Print Befehl in der ISR routine I2c_master_has_data: wird jedesmal 10 in 10 Sekunden mit den empfangenen Byte ausgeführt. Also, nach dem Empfang des ersten Byte wird nicht mehr zum Do Loop zurück gekehrt, es wartet in der ISR routine auf den nächsten Byte, das kann nicht richtig sein!!!

    Hat jemand eine Idee?

    Grüsse
    Sato

    'Slave Teil

    Config I2cslave = &H82 , Int = Int0 , Timer = Timer0
    Dim Bfake As Byte

    Do
    'Die Print Anweisung wird hier immer durchgeführt fals kein Byte
    'von Master empfangen wird
    Print #1 , "Byte Geted " ; Hex(bfake)
    Loop

    I2c_master_has_data:
    Bfake = _a1
    'Nach den ersten empfangenes Byte, wird diese Routine nicht mehr
    'zum Do Loop verlassen, es wird schön brav in 10 in 10 Sekunden
    'der empfangene Byte mit Print angezeigt. Das sollte doch nicht sein
    Print #1 , "Get_received " ; Hex(bfake)
    Return

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    46
    Beiträge
    765
    Nach dem Printbefehl muss bfake wieder geleert werden. bfake=""
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

Berechtigungen

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