Forum: Mikrocontroller und Digitale Elektronik MCP23017 I2C Geschwindigkeitsmodi


von St. D. (st_d)


Lesenswert?

Hallo Gemeinde,

MCP23017 Datenblatt ist irgendwie unklar. Für I2C-Bus werden 3 
verschiedene Geschwindigkeitsmodi erwähnt: 100kHz, 400kHz & 1.7MHz und 
für alle Modi sind verschiedene Bustiming-Parametern angegeben.

Muss man dann ein Modus "wählen"? Wie wählt man ein Modus?
Wenn alle MCP23017 ICs den Betrieb @1.7MHz unterstützen, die würden die 
niedrigere Taktraten auch unterstützen: Wozu sind diese Modi?

Beste Grüße...

von Joerg L. (Firma: 100nF 0603 X7R) (joergl)


Lesenswert?

Die Modi wurden vom Erfinder des I2C so definiert.
Hier soll nur gezeigt werden, daß der Chip diese Modi alle beherrscht.

von aSma>> (Gast)


Lesenswert?

Servus,
der i2c bus hat so standard Taktraten. Diese ermöglichen bei der 
Auslegung der Pullups eine kleine Zeitersparnis.

Wenn man weiß, dass man 100khz Takt hat, dann wählt man einen Pullup zw. 
(4,7..10)k ohm usw.

Natürlich kannst du auch jede beliebige Frequenz im Controller 
einstellen, wie z.B. 1MHZ. Wichtig ist dabei immer, dass bei sehr hohen 
Geschwindigkeiten die SDA-,CLK-Leitung so klein wie Möglich sind. Wenn 
man alles rausholen will, dann braucht man einen Oszilloskop.

Hat man man jetzt z.B. an einen Bus zwei unterschiedliche Slaves, der 
eine schafft nur bis 100khz und der andere macht auch bei 400khz mit. 
Dann gibt es die Möglichkeit "Clock-Streching". Damit ist es dennoch 
möglich den höheren Takt zu fahren.

mfg

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.