I am using a BME280 sensor with STM32L476RG microcontroler.
I am having trouble with the bme280_init() function.
In this function, I pass the first null_ptr_check() so dev , dev->read , dev->write and dev->delay_us are different from NULL.
But just after that when I enter the bme280_get_regs() function, I don't pass the null_ptr_check() whereas my device structure has not changed.
I investigated the matter with a debugger and I found out dev->intf_ptr has changed from BME280_SPI_INTF to BME280_I2C_INT, which I don't understand as there was no redefinition of the device structure.
Could someone help me?
Solved! Go to Solution.
Thanks for the reply.
Well, I based my code on the driver example from the beginning.
What I find awkward is that the two null_ptr_check(dev) functions are almost consecutive and that I pass the first null_ptr_check(dev) but not the second without the device structure redifinition.
I attach a picture of the bug location : bme280_init() and just above there is the device structure definition similar to the one in the driver example.