nichtgedacht / Arduino-MS5611-Interrupt

Interrupt driven version of Arduino-MS5611
GNU General Public License v3.0
0 stars 0 forks source link

Not working with OLED on I2C #1

Open M-Kmp opened 2 years ago

M-Kmp commented 2 years ago

Hello,

i'm trying to display the meassurements from the MS5611 sensor on an OLED. Thereofore i'm using a Arduino Nano with MS5611 and a 128X64 OLED driven by a SSD1306 controler. The Arduino, sensor and display are connected via I2C. As a first test I just put together both "simple" program examples of the two libs.

But after going through the Loop 2-3 times the program gets stuck. There are no more serial outputs and also the OLED stops refreshing. Each program example on it's own does work so i don't think there is a wiring issue. Also there is no problem using the original Library from Korneliusz Jarzebski with the OLED.

Do you have an Idea whats wrong and how i can fix that?

Here is the code i put together: MS5611_test.txt

Thank you very much, Markus

nichtgedacht commented 2 years ago

Am Donnerstag, 3. Februar 2022, 12:56:50 CET schrieb M-Kmp:

Hello,

i'm trying to display the meassurements from the MS5611 sensor on an OLED. Thereofore i'm using a Arduino Nano with MS5611 and a 128X64 OLED driven by a SSD1306 controler. The Arduino, sensor and display are connected via I2C. As a first test I just put together both "simple" program examples of the two libs.

But after going through the Loop 2-3 times the program gets stuck. There are no more serial outputs and also the OLED stops refreshing. Each program example on it's own does work so i don't think there is a wiring issue. Also there is no problem using the original Library from Korneliusz Jarzebski with the OLED.

Do you have an Idea whats wrong and how i can fix that?

Here is the code i put together: MS5611_test.txt

Thank you very much, Markus

Hi Markus,

the Arduino-MS5611-Interrupt lib uses a timer(1) exclusively in order to interleave the conversion time of the AD converter and user code. If another lib or your code is using the same timer it will collide.

It could be also, that your code is blocking interrupts at some point.

Kind regards Dieter