Forum: Mikrocontroller und Digitale Elektronik I2C/TWI TWBR > 10 warum?


von HaPe (Gast)


Lesenswert?

Tag zusammen,

wie meine Threadname schon sagt weiß ich nicht warum der Wert im TWBR 
Register bei I2C nicht kleiner als 10 sein soll. Im Datenblatt finde ich 
nichts dazu habe es aber hier und auch bei rn-wissen gelesen.

Kann mir jemand sagen ob es stimmt und wenn warum?

Danke im Vorraus

von holger (Gast)


Lesenswert?

>Im Datenblatt finde ich nichts dazu

Sehr lustig:

TWBR should be 10 or higher if the TWI operates in Master mode. If TWBR 
is lower than
10, the Master may produce an incorrect output on SDA and SCL for the 
reminder of the
byte. The problem occurs when operating the TWI in Master mode, sending 
Start + SLA
+ R/W to a Slave (a Slave does not need to be connected to the bus for 
the condition to
happen).

von HaPe (Gast)


Lesenswert?

Ich hab das Datenblatt vom ATmega8...auf welcher Seite hast du das 
gefunden? Direkt unter dem TWBR Register steht bei mir nichts.

von holger (Gast)


Lesenswert?

>Ich hab das Datenblatt vom ATmega8

Ach DER ATmega.

>...auf welcher Seite hast du das
>gefunden? Direkt unter dem TWBR Register steht bei mir nichts.

Im Datenblatt vom ATMega1280. Flog halt gerade so rum.

von HaPe (Gast)


Angehängte Dateien:

Lesenswert?

Also DER scheint das nicht im Datenblatt stehen zu haben. Ich weiß du 
hast Besseres zu tun aber ich hab mein Datasheet mal angehängt. Ich 
brauche die Information als Referenz für eine Doku deswegen ist es mir 
so wichtig.

von holger (Gast)


Lesenswert?

>Also DER scheint das nicht im Datenblatt stehen zu haben.

Hat DER auch nicht.

>Ich weiß du hast Besseres zu tun

Nö, dann wär ich nicht hier;)

>Ich brauche die Information als Referenz für eine Doku deswegen ist es mir
>so wichtig.

Aus welchem Grund? Der ATmeg8 scheint das Problem nicht zu haben.
Oder vieleicht doch und es ist nicht dokumentiert?
Verweis doch einfach auf das Datenblatt vom Atmega1280.

Welchen Grund hast du TWBR kleiner als 10 zu machen?

von spess53 (Gast)


Lesenswert?

Hi

>Im Datenblatt vom ATMega1280. Flog halt gerade so rum.

Kann ich in meinem nicht finden. Ich habe diese Bedingung zwar auch in 
Erinnerung. Aber in aktuellen Datenblättern scheint dieser Passus nicht 
mehr vorhanden zu sein.

MfG Spess

von holger (Gast)


Lesenswert?

>>Im Datenblatt vom ATMega1280. Flog halt gerade so rum.
>
>Kann ich in meinem nicht finden.

War von 2005;) In neueren Datenblättern find ichs auch nicht mehr.
Das Problem wurde wohl beseitigt.

von HaPe (Gast)


Lesenswert?

Ich hab einen 3.6864MHz Quarz dran, da ist der TWBR Wert 10 oder 11 bei 
I2C (SCL 100kHz). Dieser Quarz ist gut für USART und der MC hat damit 
einen recht geringen Stromhunger. Ein noch kleinerer, USART-geeigneter 
Quarz währe ja wenn ich denn 100kHz SCL haben will nicht möglich. Dahin 
soll die Erklärung gehen, aber ohne die Quelle aus dem Datenblatt von 
meinem MC kann ich das nicht machen. Behauptungen sind nicht gefragt ;)

Danke für eure Mühe.

von holger (Gast)


Angehängte Dateien:

Lesenswert?

Hier mal im Datenblatt von ATMega48 usw. von 2004 Seite 205.
Am besten gleich archivieren;)

von spess53 (Gast)


Lesenswert?

Hi

> Dahin
>soll die Erklärung gehen, aber ohne die Quelle aus dem Datenblatt von
>meinem MC kann ich das nicht machen. Behauptungen sind nicht gefragt ;)

Wenn du im aktuellen Datenblatt deines Controllers keine Einschränkung 
bezüglich TWBR findest dann sind alle anderen Aussagen ungültig. Fertig.

MfG Spess

von holger (Gast)


Lesenswert?

>Hier mal im Datenblatt von ATMega48 usw. von 2004 Seite 205.
>Am besten gleich archivieren;)

Oha, 440 Downloads.

Möchte noch jemand ein Datenblatt für ATmega1280,1281,2560,2561,640
von 2005 haben? Auf Seite 248 stehts dann auch;)

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.