Nutzung Hardware-I2C am Bsp. BMP180-Sensor (Temp, Druck)

Was wird wie gelöst, warum geht es nicht, wer bekommt es zum Laufen? Eure Projekte und Programme könnt ihr hier vorstellen, diskutieren und verbessern.

Nutzung Hardware-I2C am Bsp. BMP180-Sensor (Temp, Druck)

Beitragvon DL9GFA » Sa 10. Jan 2015, 15:27

Hallo MC-Freunde,

bisher wurden hier ausschließlich Software-I2C-Beispielprogramme (Bit-Banging) gebracht, da sie schneller funktionierten. Anbei sende ich einen Treiber und ein Beispielprogramm für die Nutzung der Hardware-Unterstützung für I2C. Tatsächlich hätte ich mich ohne Logikanalysator sehr schwer getan.

Im Beispielprogramm anbei wird ein BMP180-Sensor am I2C-Bus betrieben. Es ist ein MEMS-Druck-Sensor, der auch Temperatur mißt, da er sie für die Druckberechnung benötigt. Bitte beachten, dass die Druckmessung ohne je eine Temperaturmessung durchgeführt zu haben, keine korrekten Werte liefert. Ich hätte die Temperaturmessung natürlich in die Routine für den Druck gleich mit einbauen können, aber in der Praxis wird die Temperaturmessung seltener durchgeführt als die Druckmessung. So ist es flexibler.
Je nach Anwendung wird z.B. nur jede Minute die Temperatur gemessen, weil sie sich nicht so schnell verändert, aber jede Sekunde der Druck, je nachdem was man detektieren möchte (z.B. Kühlschranköffnung ;o).

Viele Grüße!

Gerrit, DL9GFA
Dateianhänge
BMP180test.zip
Frei für nichtkommerzielle Nutzung.
(64.04 KiB) 163-mal heruntergeladen
DL9GFA
 
Beiträge: 66
Registriert: Do 12. Apr 2012, 22:30

Zurück zu Technische Fragen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron