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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.