Mega328p - maximale I2C Geschwindigkeit?

OP #4604943
Liebe alle, ich habe gerade ein Verständnisproblem:

Beim ATMega328P steht im entsprechenden Abschnitt 22.1 "up to 400kHz 
Data Transfer Speed"

Weiter unten unter 22.5.2 steht eine Formel, wo ich auf 1MHz SCL-Takt 
komme, wenn ich ihm mit 16MHz laufen lasse, des Prescaler auf 1 und das 
Bit rate register auf 0 stelle - was stimmt nun? Hab ich mich 
verrechnet?

http://www.atmel.com/images/atmel-8271-8-bit-avr-microcontroller-atmega48a-48pa-88a-88pa-168a-168pa-328-328p_datasheet_complete.pdf
Gast #4604957
Hi

>Weiter unten unter 22.5.2 steht eine Formel, wo ich auf 1MHz SCL-Takt
>komme, wenn ich ihm mit 16MHz laufen lasse, des Prescaler auf 1 und das
>Bit rate register auf 0 stelle - was stimmt nun? Hab ich mich
>verrechnet?

Schon mal S.308 '29.7 Two-wire Serial Interface Characteristics' im 
Datenblatt gelesen?

MfG Spess
#4604959
Es wäre möglich, an den Prozessor-Pins Signale mit einer höheren 
Frequenz auszugeben, aber das bedeutet nicht, dass der I²C-Bus dann noch 
funktionieren würde.

Die I²C-Spezifikation verlangt für Fast-mode Plus einen Mindeststrom von 
20 ms, was der ATmega nicht mit 0,4 V Spannungsabfall schafft.
OP #4605008
spess53 schrieb:
> Schon mal S.308 '29.7 Two-wire Serial Interface Characteristics' im
> Datenblatt gelesen?

Jetzt ja - da steht "meets or exceeds these requirements" - also würde 
ich schließen - er kann auch schneller.

Clemens L. schrieb:
> Die I²C-Spezifikation verlangt für Fast-mode Plus einen Mindeststrom von
> 20 ms, was der ATmega nicht mit 0,4 V Spannungsabfall schafft.

? was meinst Du genau ?
Gast #4605029
Hi

>Jetzt ja - da steht "meets or exceeds these requirements" - also würde
>ich schließen - er kann auch schneller.

Dann addiere mal tLOW und tHIGH. Das macht 1,9µs oder 0,53MHz.

TWI hat bei Atmel 'Slew-rate Limited Output Drivers'. Das begrenzt deine 
maximale Gschindigkeit.

MfG Spess
#4605178
Rainer U. schrieb:
> Clemens L. schrieb:
>> Die I²C-Spezifikation verlangt für Fast-mode Plus einen Mindeststrom von
>> 20 ms, was der ATmega nicht mit 0,4 V Spannungsabfall schafft.
>
> ? was meinst Du genau ?

Wenn ein Pin des ATmega328P ein 0-Signal ausgibt und mit 20 mA belastet 
wird, dann hat er nicht mehr 0 V, sondern typischerweise ca. 0,5 V, im 
schlechtesten Fall noch mehr.
Angehängte Dateien:
Gast #4605286
HI

>Wenn ein Pin des ATmega328P ein 0-Signal ausgibt und mit 20 mA belastet
>wird, dann hat er nicht mehr 0 V, sondern typischerweise ca. 0,5 V, im
>schlechtesten Fall noch mehr.

Na und? L wir bis maximal 0,3*VCC erkannt.

MfG Spess
Gast #4605468
spess53 schrieb:

> Dann addiere mal tLOW und tHIGH. Das macht 1,9µs oder 0,53MHz.

Das sind die Grenzen, bei denen es auch im worst case für alle sonstigen 
Randbedingungen (insbesondere kapazitive Buslast) sicher noch 
funktioniert.

Genauso interessant sind aber tr und tof. Zusammen 550ns oder 1,81MHz. 
DAS stellt die Grenze dar, oberhalb der es sicher NICHT mehr 
funktioniert.

Zwischen diesen beiden Eckwerten existiert ein recht breiter 
Graubereich, der sich nutzen lässt, wenn die tatsächlichen 
Randbedingungen des Busses deutlich besser als der spezifizierte worst 
case sind.

> TWI hat bei Atmel 'Slew-rate Limited Output Drivers'. Das begrenzt deine
> maximale Gschindigkeit.

Genau. Die stecken aber eben nicht in tLow und tHigh, sondern in tr und 
tof.
Gast #4607141
Hi

>Viel Spaß in der rauen Praxis mit einem I2C-Bus bei dem einzelne
>Teilnehmer mehr als 1 Volt bei low stehen lassen.

Hast du kongrete Beispiele? Denn bei VCC=5v macht das immerhin 1,5V.

MfG Spess

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.