I2C Kapazität

Gast #4801589
Lesenswert?

Hallo Forum,

ich setzte mich gerade mit dem Bus I2C auseinander. Dabei verstehe ich 
leider nicht wie man die Buskapazität ausrechnet.
Ich möchte gerne den Atmega328 nutzten. Ich hab schon irgendwo gelesen, 
das die Kapazität ungefähr pro cm 1pF beträgt.
Stimmt das soweit und könnte mir jemand sagen, auf welche Kapazität ich 
beim Atmega328 achten muss und wie ich das nachher verrechne. Auf eine 
Antwort würde ich mich freuen.

PS: Ich arbeite mit dem Arduino Uno
(Firma: Vescomp) #4801604
Lesenswert?

Alexander K. schrieb:
> Ich möchte gerne den Atmega328 nutzten. Ich hab schon irgendwo gelesen,
> das die Kapazität ungefähr pro cm 1pF beträgt.
> Stimmt das soweit und könnte mir jemand sagen, auf welche Kapazität ich
> beim Atmega328 achten muss und wie ich das nachher verrechne.

 Warum ?
 Falls die Leitungen nicht länger als 20cm sind, braucht dich das nicht
 zu interessieren.
Gast #4801628
Lesenswert?

Mit 20cm klappt es bis jetzt auch wunderbar, jedoch würde ich im 
nachhinein eine längere Strecke überbrücken. Ich dachte da an so 50m. 
Dazu muss ich denke ich mal noch die Taktrate anpassen. Es geht mir ja 
nur darum das ich weiß wie man das ausrechet. Ich hab gerade noch etwas 
rumgelesen und bin drauf gestoßen, das der µC an der Spannungsversorgung 
parallel einen Kondensator geschaltet hat. Muss ich diesen dazu 
addieren?
#4801638
Lesenswert?

Alexander K. schrieb:
> Mit 20cm klappt es bis jetzt auch wunderbar, jedoch würde ich im
> nachhinein eine längere Strecke überbrücken. Ich dachte da an so 50m.
Wenn du Glück hast geht das vielleicht, aber dafür ist I2C nicht 
gemacht. Das war für Verbindung von Bausteinen innerhalb eines Gerätes.
> Dazu muss ich denke ich mal noch die Taktrate anpassen.
Mit Sicherheit
> Es geht mir ja
> nur darum das ich weiß wie man das ausrechnet
In den Daten deines verwendeten Kabels suchen wie viel pF pro Meter das 
hat
> Ich hab gerade noch etwas
> rumgelesen und bin drauf gestoßen, das der µC an der Spannungsversorgung
> parallel einen Kondensator geschaltet hat. Muss ich diesen dazu
> addieren?
Nein der hat mit dem Bus doch nichts zu tun.

Sascha
Gast #4801784
Lesenswert?

Alexander K. schrieb:
> In den Daten deines verwendeten Kabels suchen wie viel pF pro Meter das
> hat
>
> Danke schon mal für den Tipp. Muss ich nicht noch die Busteilnehmer
> dazurechnen und wenn ja wo finde ich die Angabe?

IMHO ist die zulässige Kapazität 400pf sowohl für SCL als SDA. Ich würd 
so als Daumenwert 50pF pro Meter für das Kabel, 10pF für jedes Device 
und 10pF für für jeden Stecker mit dazugehöriger Platinenanbindung 
ansetzen. Ich bin zwar kein Anhänger der Schule, die I2C nur für 
Verbindungen innerhalb einer Platine sieht, aber ohne zusätzliche 
Maßnahmen halte ich 50m für nicht erreichbar. Ein Master, ein Slave, 
gutes Layout, vernünftiges Kabel und richtige Belegung der Adern 
(Crosstalk ist da dein Feind, weniger die Kapazität) können 5m schaffen.

Die Erfahrung lehrt, daß die Geschwindigkeit keine wirkliche Rolle 
spielt. Wenn es bei 100k nicht geht, geht es auch bei 10k nicht. Es 
dauert nur 10 mal länger, bis man den Fehler bemerkt.

MfG Klaus
Gast #4801820
Lesenswert?

Im Datenblatt zu P82B715 I2C-Bustreibern hat es einiges an 
Berechnungskram drin, Kapazitäten, Pull-Ups etc., ich glaube das kann 
Dir weiterhelfen:

www.nxp.com/documents/data_sheet/P82B715.pdf

Gleichzeitig weißt Du jetzt auch, womit Du die Reichweite verlängern 
kannst, wenn das Ergebnis Deiner damit angestellten Berechnungen 
unbefriedigend ist. Was es sein wird, denn dieser Baustein kann gerade 
maximal 50 m/ 3000pf.

Eingesetzt gesehen habe ich die Chips in einem modularen 
Notbeleuchtungssystem. Die 6, 8 Platinen waren dabei gerade mal auf 
lächerlichen 1,50 m Gesamtbreite montiert, Buslänge allerschlimmstens 3 
m. Gut, bei so einem System will man auf Nummer sehr sicher gehen, aber 
sah weit von 50 m aus.
Gast #4801969
Lesenswert?

50 cm, das meinst du nicht ernst. Auf einer Platine, z.B. kann man ohne 
Probleme schon 1 m erreichen. Bei meinen Platinen ohne zusätzliche IC 
komme ich auf ca. 5 bis 10 m. Mit 2 zusätzlichen Platinen komme ich auf 
ca. 30 bis 50 m. Mit einem anderen IC geht es bis auf ca. 300 m. Dann 
gibt es noch kann. Auch eine Potentialtrennung, komplett mit SCL, SDA, 
GND, Rück und 5V geht ohne jede Probleme. Als Zeit sollte auf jeden Fall 
100kHz damit gehen.
MFG Kl
(Firma: Vescomp) #4801987
Lesenswert?

Klars schrieb:
> 50 cm, das meinst du nicht ernst. Auf einer Platine, z.B. kann man ohne
> Probleme schon 1 m erreichen.

 LOL.
 Sicher, wenn die Leitungen als Antenne geführt sind - rund um die
 Platine.

> Bei meinen Platinen ohne zusätzliche IC
> komme ich auf ca. 5 bis 10 m. Mit 2 zusätzlichen Platinen komme ich auf
> ca. 30 bis 50 m. Mit einem anderen IC geht es bis auf ca. 300 m.

 Alle Achtung, so einen Mist kann nicht jeder bauen. Dazu muss man
 schon begabt sein.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren