I2C und lange Pausen zwischen den Bytes

OP #884649
Lesenswert?
• ▲
▼
Hallo,
ich lese mittels I2C/TWI unter Zuhilfenahme von Fleury's Lib ein 
Thermometer (LM75) aus. Das funktioniert auch gut, jedoch liegen 
zwischen den einzelnen Bytes scheinbar jeweils knapp 25ms Pause, warum?

Code anbei. Dass die Ausgabelogik noch nicht perfekt ist, ist so 
gewollt. Hab heute erst damit auf'm Steckbrett angefangen.

Grüße, Gregor
Angehängte Dateien:
Gast #884708
Lesenswert?
• ▲
▼
>Aber die laufen doch über Interrupts ?!

Wie sollte ich das deinem Code entnehmen ?

>Der mega32 läuft auf 16MHz. 25ms entspricht 400.000 Zyklen, was soll so
>lange brauchen?

Bei 4800 Baud beträgt die Übertragungszeit für ein Zeichen ca. 2ms.
Ob mit oder ohne Interrupt. Wie groß ist denn dein Sendepuffer ?
OP #884777
Lesenswert?
• ▲
▼
Alles original Fleury. 32 Byte Sendepuffer. Alle Strings sind kleiner 
als der Puffer.
Während das Byte übertragen wird, wird doch das non-ISR (Hauptprogramm) 
weiter abgearbeitet bis zum Übertragung-Fertig-Interrupt. Die I2C 
Übertragung besteht ja auch nur aus dem Beschreiben des Registers und 
dem Warten auf den Acknowledge-Interrupt. Ich kommentiere morgen mal 
alle UART-Debug-Sachen aus und berichte über eventuelle Performance 
Veränderungen...
Gregor
Gast #884790
Lesenswert?
• ▲
▼
>Ich kommentiere morgen mal
>alle UART-Debug-Sachen aus und berichte über eventuelle Performance
>Veränderungen...

Geh doch einfach mal auf 9600 Baud. Ich könnte schwören
das sich die Pausenzeiten halbieren ;)

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.