STEVAL-MKI159V1 with Nucleo F446RE - I2C
Hi, it's my first experience with MCUs in general.
In this first approach I try to read outputs from MKI159V1 (LSM9DS1) with the nucleo F446RE. I'm starting with I2C protocol. I read any kind of articles here in the community but I still can't work it.
Let's start from reading the default value in the register WHO_AM_I (0x0F) that has to return 104 if the module is detected.
First question
The acceleration and gyroscope SAD+R/W imu address to read in a register are 0xD5 and 0xD7. Can I choose indifferent between them and why two type of address? Have I connect any physical pin (Pin 22 SDO) to GND or Vdd?
Second question
I think my issues start from conneting the module to the mcu. My settings are:
Vdd (Pin 1) -> 3V3;
Vdd_IO (Pin 2) -> 3V3;
SCL (Pin 20) -> D15;
SDA (Pin 21) -> D14;
CS_A/G (Pin 19) -> Vdd_IO;
GND (Pin 13) -> GND ;
What's wrong?
In the STM32CubeIDE, with right settings in Pinout & Configuration of .ioc file, simply using this function, HAL_I2C_Mem_Read(&hi2c1, IMU_ADD_R1, WHO_AM_I, 1, &check, 1, 1000), where I choose IMU_ADD_R1 0xD5, with the function HAL_UART_Transmit i'm not able to read in the register.
Thanks for any type of answer and sorry for basic questions.
