EOC Pin von BMP085 immer High

OP #1695447
Lesenswert?

Hallo,

ich schreibe gerade eine Bibliothek für den BMP085. Es funktioniert auch 
schon alles bis auf eine Sache.

Ich wollte zum Schluss noch die delays für das Warten bis Ende 
Konvertierung (ADC BMP085) durch die Abfrage des EOC Pins ersetzten. 
Leider habe ich nun festgestellt, dass der EOC-Pin des BMP085 immer auf 
High liegt und nicht wie im Datenblatt steht während der Konvertierung 
auf Low geschaltet wird.
Hättet ihr eine Idee an was das liegen kann.
Habe schon versucht mit und ohne internen Pullup (Atmega32). Leider 
keine immer das Gleiche.
1
.
2
.
3
.
4
//Send Stop on the Bus
5
if (*error_code==0){
6
 *error_code=i2cSendStop();
7
}
8

9
while(!(PINC & (1<<PC2))){
10
_delay_us(1);
11
};
12
  
13
/*_delay_ms(16);*/  // min time is 15ms
14
  
15
if (*error_code==0){
16
 pressure = bmp085ReadShort(0xF6,error_code);
17
 pressure = pressure << 8;
18
 pressure = pressure >> (8-OSS);
19
}
20
.
21
.
22
.

Könnte es sein, dass der Sensor beim löten etwas abbekommen hat. Mit 
delay funktioniert er allerdings ohne Probleme.

Wäre sehr dankbar, falls jmd. noch eine Idee hätte was ich probieren 
könnte. (Ich leider nur Multimeter keine Oszi)

Vielen Dank im Voraus!

Beste Grüße,
Gast #1696151
Lesenswert?

Bei mir funktioniert es mit ausgeschalteten Pullups. Den Pin natürlich 
auf Eingang schalten.
Wenn das nicht klappt, evlt. die Pins am BMP085 nachlöten (am besten, 
wenn vorhanden, mit einer Heißlufstation).
Empfindlich ist der Sensor übrigends nicht. Hab meinen schon mehrmals 
Ein- und Ausgelötet.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren