I²C Master mit ADuC7026

OP #366358
Lesenswert?
• ▲
▼
Hallo,

ich habe einen ATmega8 und einen ADuC7026 über einen I²C-Bus gekoppelt.
Der ADuC7026 ist der Master, während der ATmega8 den Slave bildet.

Die Programmierung der integrierten Hardware I²C-Controller ist mit dem
ATmega8 kein Problem, da die Register im Datenblatt sehr gut erklärt
sind.

Beim ADuC7026 sieht das aber etwas anders aus. Ich weiß nicht, wie ich
eine gezielte Stopsequenz auslösen soll. Es sind auch keine weiteren
Informationen darüber im Netz zu finden.

Eine Startsequenz wird automatisch erzeugt, wenn ich das
Slave-Adress-Register des ADuC7026 beschreibe:

  I2C1ADR = 0x02;

Danach kann ich ein Byte senden:

  I2C1MTX = 0x55;

Soweit ist alles OK - der Slave empfängt das Byte ordnungsgemäß

Nun sollte der Master aber die Übertragung beenden und eine
Stopsequenz senden.

Die Frage ist jetzt, wie ich das machen soll. Es gibt kein
Control-Register (TWCR) wie beim ATmega8, indem nur ein Bit
gesetzt werden muss.

Vielleicht hat das jemand schonmal gemacht und weiß wie es geht.

Wäre schön, wenn mir jemand helfen könnte!

Schonmal Vielen Dank !

Gruß Mario

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.