Hallo,
ich bin gerade etwas am verzweifeln. Ich versuche einen I2C am STM32F103
zum laufen zu bekommen. Hierfür habe ich genau den Code von
http://diller-technologies.de/stm32.html#i2c genommen. Deswegen habe ich
das Projekt nicht angehängt (kann ich aber natürlich tun).
Ich möchte einen RCT ansprechen:
https://datasheets.maximintegrated.com/en/ds/DS1307.pdf
Zum Test wollte ich einfach mal die Sekunden auslesen.
In der main Schleife führe ich folgenden Code aus:
1 | i2c_writeByte(0xD0,0x00); // wir wollen die Sekunden lesen
|
2 | Delay(1);
|
3 | i2c_readTwoBytes(0xD0); // jetzt schauen wir ob sie da sind?
|
Dann erhalte ich Bild1 bzw. Bild1zoom, was erstmal bezüglich des Sendens
recht ordentlich aussieht. Leider wird beim lese Befehl nur ein Start
und Stop Bedingung ausgeführt.
Kommetiere ich den ersten Befehl (das schreiben aus), scheint auch der
Lesebefehl zu funktionieren Logic Analyzer zeigt auf jeden Fall etwas
plausibles an. Kann mir jemand helfen diesen Fehler zu finden? Wo könnte
ich wie suchen? Irgendwas wird anscheinden nicht richtig zurückgesetzt
nach dem Schreiben, oder?