-         

Ergebnis 1 bis 6 von 6

Thema: I2C- Bus zu schnell

  1. #1
    Flownfluid
    Gast

    I2C- Bus zu schnell

    Anzeige

    Hallo zusammen,

    ich benutze einen PIC18F452 mit 40MHz diese Geschwindigkeit brauche ich um gewisse Schiebeoperationen zu bewältigen.

    Doch nun muss ich noch zusätzliche ein Gerät mit dem I2C- Bus ansteuern, jedoch kann dieses Gerät nur bis zu 5kHz Clock arbeiten.

    Wie kann man die Geschwindigkeit des I2C- Bus so einstellen das er unter 5kHz fällt?
    Ich brinnge ihn leider nur auf ca 78kHz...

    Vielen Dank im voraus

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2004
    Beiträge
    275
    Hi!
    Ich wüsste nicht das man die Busgeschwindigkeit an sich regeln könnte...
    Es liegt doch an dir wann du ein I2C Gerät ansprichst, time das doch einfach richtig.

    mfG
    Batti

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    21.09.2005
    Beiträge
    27
    Hallo. vielleicht habe ich mich da falsch ausgedrückt oder habe ich da etwas falsch in den Hals gekriegt...

    Mit dem Register SSPADD kann man doch die Geschwindigkeit des I2C- Bus (als den Clock von SCL)einstellen oder nicht?

    Wenn ja ich bräuchte einen Clock unter 5kHz und da dies ein Teiler braucht von 2000 und das SSPADD- Register nur 8 bit hat also max. einen Teiler von 255. ich brächte da schon irgendwie 11 bits...

    Danke und Gruss

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Wenn du mit Hardware nicht tiefer kommst, dann bleibt wohl nur eine Software-Version von I2C.
    Falls der Master zu schnell ist, sollte der Slave eigentlich ein Clock-Stretch machen, um das Master-I2C-Modul zu bremsen. Ob er das bei 5kHz gegen 78kHz allerdings schnell genug schafft...?
    Disclaimer: none. Sue me.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    10.10.2005
    Beiträge
    7
    Eine weitere Lösung wäre ein extra Pic.
    Dieser könnte die I2C Aufgaben bewältigen, ohne das der Große ausgebremst werden muß (z.B. über Software I2C).
    Die Daten zu dem kleinen Pic kannst du schnell übertragen und die restliche Kommunikation erledigt er dann abenfalls.

    Gruß, Tom

    PS: Wenn möglich kann auch eine ISR (Interruptroutine) eingebaut werden, falls zeitlich möglich (dann kein Extra-Pic nötig).

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    21.09.2005
    Beiträge
    27
    Vielen Dank für deine Antwort...

    Habe an den zweiten Pic auch schon gedacht aber da ich ein embedded system entwickle kommt das mit dem zweiten Pic nicht gerade gut(Stromverbrauch)

    Aber ich habe nun den I2C halt Softwaremässig implementiert und funktioniert einwandfrei.

    Vielen Dank nochmals für eure Hilfe

Benutzer, die dieses Thema gelesen haben: 0

Derzeit gibt es keine Benutzer zum Anzeigen.

Berechtigungen

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