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.
Post Reply
DL9GFA
Posts: 66
Joined: Thu 12. Apr 2012, 22:30

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

Post by DL9GFA »

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
Attachments
BMP180test.zip
Frei für nichtkommerzielle Nutzung.
(64.04 KiB) Downloaded 337 times
Post Reply