API is a general and portable interface. The lower hardware driver performs data reading and writing in polling or interrupt mode.
MCU hardware read-write implementation, need to refer to MCU manufacturers routine.
I was asking about an example of using a BMA2x2 driver in an intrrupt mode. Because current usage of BMA2x2_RD_FUNC_PTR assumes synchronous (busy wait) way of reading.
Methods HAL_I2C_Master_Transmit and HAL_I2C_Master_Receive can be used with the BMA2x2 driver but the MCU will be pooling I2C registers and wait for whole data to be transmited (it will be blocked and during this time it won't be able to do anything else and I want to avoid that). I'm not asking about reading data from I2C in the interrupt mode. I ask about example of using BMA2x2 driver when I read data from I2C in a non blocking way (i.e. using HAL_I2C_Master_Transmit_IT and HAL_I2C_Master_Receive_IT).
Got your point. Sensor API is a reference code that contains the process of accessing the sensor and is easy to use.
If you want to implement other access methods, you can modify it based on the current code.