Hallo Leute :) Ich muss mit dem o.g. µC einen externen I²C Baustein ansteuern. Hab bisher die Grundlagen über I²C durchgelesen, weiß aber jedoch nicht, was ich bei der Programmierung alles beachten muss, da ich mit Atmega erst angefangen habe. Hab schon was über TWI etc. gelesen, verstehe aber ehrlich gesagt nicht, wie das Ganze funktioniert. Kann mir jemand nen Link zu einer guten Beschreibung geben? Oder evtl ein funktionierendes Beispiel, wie man ein I²C Baustein ansteuert? Wäre sehr nett. MFG
o.g. Baustein gibt es nicht... Zum Thema I²C haben die Leute von Philips ein paar Dokumente auf ihrer Internet-Seite.
@ Wolfram: Gibt es auch im Web? Ich benutze AVRStudio 4.12 @ Rahul: Sorry ich meinte Mega162 (verschrieben) Ich hab so eben auf der Atmel Seite erfahren, dass Mega162 gar kein TWI Interface hat, also muss ich das Ganze softwaremäßig realisieren. Und da wäre auch schon eine Frage, wie erzeuge ich am besten 400KHz? mfg
Du brauchst nichtz unbedingt 400kHz. Das ist nur die maximale Frequenz für I2C. Die I2C-Schnittstelle funktioniert nach unten hin bis 0Hz. Also mach Dir keinen Stress wegen der Frequenz. Takte einfach ganz gemütlich die Daten raus. Markus_8051
Ich kann jetzt nur sagen, wie man das ganz einfach im Porgrammcode machen kann. Die wirklich feine Art ist es nicht, da der Controller in dieser Zeit nicht anderes tun kann, aber für gelegentliche Abfragen ist das eigentlich ok. Einfach per Software die einzelnen Pins setzen und dafür sorgen, daß zwischen den einzelnen Clock-Pulsen mindestens die benötigte Zeit gewartet wird. Wenn einzelne Clocks etwas länger sind, macht das nichts. I2C setzt keine feste Baudrate voraus, da die Clock ja mit übertragen wird.
Guck mal in der Codesammlung. IMHO hat Peter Dannegger was in der Richtung veröffentlich...
Peter Dannegger hat soweit ich verstanden habe, eine TWI Lösung veröffentlicht :(
Auf der Website von Atmel gibts bei den Application Notes Beispiele zu Software- und Hardware-I2C.
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.