Forum: Mikrocontroller und Digitale Elektronik I2C mit STM32F4 Discovery und Adafruit OLED


von Fabian V. (vogtinator)


Angehängte Dateien:

Lesenswert?

Hallo,
ich hab am Samstag endlich mein STM32F4 Discovery und ein Adafruit 
128x32 I2C Oled Display bekommen.
Hab natürlich gleich angefangen, mein Eclipse aufzusetzen und 
loszuschreiben, allerdings funktioniert I2C nicht: Ich bekomme NIE ein 
Ack vom Display zurück (SDA high während SCL vom STM32 auf low gezogen 
wird).
Er bleibt in der Schleife "while(!I2C_CheckEvent(I2Cx, 
I2C_EVENT_MASTER_MODE_SELECT));" hängen.

Habs sowohl mit 5V (ist ja 5V tolerant) als auch mit 3V an Pullup (1K) 
und VIN probiert, aber funktioniert nicht. Mit meinem Atmega168 und der 
Arduino Library fürs Display klappt es.
Am Reset kann es nicht liegen, dass habe ich mit meinem Multimeter 
gemessen und auch schon manuell gesendet.
Weder I2C1 noch I2C2 funktionieren, gibt es Code zum Testen, der Daten 
von I2C1 an I2C2 schickt? Ich glaube zwar nicht, dass mein Board kaputt 
ist, aber man weiß ja nie :-/

Hab mal den Quellcode angehängt, die I2C funktionen hab ich von 
http://eliaselectronics.com/stm32f4-tutorials/stm32f4-i2c-master-tutorial/ 
allerdings etwas verändert für I2C2.

von Fabian V. (vogtinator)


Lesenswert?

Keiner eine Ahnung? Woran kann das denn liegen?

von Fabian V. (vogtinator)


Lesenswert?

Hab den Fehler gefunden, I2C_Send7bitAddress will die eins nach links 
geshiftete Adresse. Aber dann macht der Name keinen Sinn mehr -.-

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.