Moin Moin,
mein BMP085 Sensor funktioniert auf meinem Arduino Uno einwandfrei.
Ich verbinde Analog5 mit SCL und Anlog4 mit SDA (Standard). Ist der Sensor nicht mit dem Board verbunden kommen die "falschen" Spannungswerte und werden mir dann dementsprechend umgerechnet, so dass man eine falsche Temperatur und einen falschen Luftdruck erhält. Dies ist natürlich auch ganz normal.
Ich möchte das ganze nun an einem Sondermodell des Mega 2560 austesten. Bei diesem Board befinden sich SCL und SDA nicht auf
Analog4 und Analog5 sondern auf der BUS-Seite( Pin 32 und 33).
Wenn ich nun mein Sensor mit diesen Punkten verbinde erhalte ich die Meldung "Es ist kein Sensor angeschlossen". Die meldung kommt auch, wenn der Sensor nicht mit den Pins verbunden ist.
Demnach folgere ich, dass das Programm ( Arduino/Sketch oder Lib) so eingestellt werden muss, dass sich die Pins nun an Stelle 32 und 33 befinden.
Kann mir dabei jemand helfen?
Vielen Dank im Vorraus ! ![]()
Sketch:
#include <Wire.h>
#include <Adafruit_BMP085.h> // Adafruit Bibliothek einbinden
Adafruit_BMP085 bmp;
void setup(){
// Seriellen Monitor aktivieren
Serial.begin(9600);
// Sensor initialisieren
if (!bmp.begin()) {
Serial.println("Keinen gültigen BMP085 Sensor gefunden!");
while (true) {}
}
}
void loop(){
Serial.print("Temperatur: ");
// readTemperature() Temperatur °C auslesen und anzeigen
Serial.print(bmp.readTemperature());
Serial.print(" "); // Hier müssen wir ein wenig tricksen
Serial.write(176); // um das °-Zeichen korrekt darzustellen
Serial.println("C");
Serial.print("Luftdruck: ");
// readPressure() Luftdruck in Pa auslesen und anzeigen
Serial.print(bmp.readPressure());
Serial.println(" Pa");
Serial.print("Hoehe: ");
// readAltitude() Höhe in meter auslesen und anzeigen
Serial.print(bmp.readAltitude());
Serial.println(" meter");
Serial.println(); // Leerzeile anzeigen
delay(5000); // 5 Sekunden warten
}