Gast
#5333680
Hallo, ich hoffe, dass ihr mir auf die Sprünge helfen könnte, so langsam bin ich mit meinem Latein am Ende und verwirre mich bloß noch selbst. Ich habe mit einem MSP430F2274 und einem BMP180 (Adafruit) versucht, ein SW-I2C umzusetzen. Die ANs von TI klappen nicht, alle Onlinetutorials ebenfalls nicht, es kommt immer 0xFF raus. Ich habe folgendes Bsp gerade versucht (1-zu-1, Unterschiede siehe main unten): https://gist.github.com/ksvbka/fec1f28ce40c276334fb#file-i2c_sw-c-L131 Auch wieder 0xFF. Ich versuche lediglich, das Calibration Register 0xAA des Sensors auszulesen. Leider kein Oszi zur Verfügung. Die main:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
Timing? Falsche GPIO? Geht das mit PDIR nicht so hier? Pullups nicht von Haus aus ok? Irgendwas richtig dummes? (Gleich noch eine blöde Frage, in der folgenden Funktion kann man die Anzahl der zu lesenden Bytes übergeben. Was muss denn getan werden, dass auch mehr als 1 Byte in die *buff-Variable geschrieben werden? void i2c_readData(unsigned char *buff, unsigned char deviceAddr, unsigned char regis, unsigned char nLength);)