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
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.
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 ?
Für höhere Frequenzen hat sich SPI durchgesetzt. Z.B. der S25FS128SAGMFI100 (16MB Flash) kann bis 133MHz.
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
spess53 schrieb: > Dann addiere mal tLOW und tHIGH. Das macht 1,9µs oder 0,53MHz. Ah, jetzt, ja! Das war das fehlende Puzzleteil (zumindest hab ich es erst jetzt verstanden :-) Danke an alle.
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.
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
spess53 schrieb: > L wir bis maximal 0,3*VCC erkannt. Wenn der ATmega328P mit sich selbst spricht; dann braucht man auch kein I²C. Die I²C-Spezifikation sagt 0,4 V.
Gast
#4605429
Hi >Die I²C-Spezifikation sagt 0,4 V. Nö. In der I2C-Spezifikation http://www.nxp.com/documents/user_manual/UM10204.pdf steht auf S.47 0,3*VCC. 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.
spess53 schrieb: >>Die I²C-Spezifikation sagt 0,4 V. > > Nö. In der I2C-Spezifikation steht auf S.47 0,3*VCC. Es geht hier um des Ausgang des ATmega. VOL1max ist 0,4 V.
spess53 schrieb: >>Die I²C-Spezifikation sagt 0,4 V. > > Nö. In der I2C-Spezifikation > > http://www.nxp.com/documents/user_manual/UM10204.pdf > > steht auf S.47 0,3*VCC. Viel Spaß in der rauen Praxis mit einem I2C-Bus bei dem einzelne Teilnehmer mehr als 1 Volt bei low stehen lassen.
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
Bitte melde dich an, um einen Beitrag zu schreiben.
