Forum: Mikrocontroller und Digitale Elektronik OMAP I2C überlisten


von Wilhelm (Gast)


Lesenswert?

Hallo zusammen,

kann das sein, daß die I2C-Hardware vom TI OMAP (hier: OMAP3503) 
dermaßen komfortabel ist, daß sie absolut unflexibel ist? Ich will einen 
I2C-Treiber dafür schreiben, auf den aber ein vorhandener Treiber 
aufsetzen soll. Letzterer bricht einen Schreibvorgang in mehrere 
Einzelbefehle auf, was normalerweise ja kein Problem ist. Der dusselige 
OMAP möchte aber offenbar schon beim Senden der Startcondition wissen, 
wieviele Bytes insgesamt gesendet werden -- eine Information, die in 
diesem Fall noch nicht zur Verfügung steht.

Wenn ich den Wert zu klein wähle, darf ich danach keine Bytes mehr 
schicken. Wähle ich sie zu groß, wird die Stopcondition nicht erzeugt.

Muß ich jetzt wirklich alle Schreibbefehle buffern und die Daten erst 
losschicken, wenn der Treiber den Befehl für die Stopcondition bekommt? 
Das ist ja grauenhaft umständlich! Zum Kuckuck mit diesem "Komfort"! Da 
wäre es ja einfacher, eine Softemulation des Busses zu implementieren, 
aber leider lassen sich die Pads des ersten I2C nicht als GPIO 
konfigurieren.

Oder kennt jemand einen Trick, wie man die geballte Intelligenz des OMAP 
überlisten kann?

Vielen Dank für jeden Tipp!

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.