STM32L152 I2C Read funktioniert nicht richtig

Gast #4273979
Lesenswert?

Hallo zusammen,

ich möchte mit einem STM32L152RCT6 über I2C ein eeprom auslesen. Habe 
aber immer mit dem 2. Byte Probleme.

Ich habe mit dem STM32CubeMX ein Projekt aufgesetzt und den I2C-Bus 
configuriert. Ich nutze den I2C im Interrupt mode.
1
/* I2C2 init function */
2
void MX_I2C2_Init(void)
3
{
4
  HAL_I2C_DeInit(&hi2c2);
5
  
6
  hi2c2.Instance = I2C2;
7
  hi2c2.Init.ClockSpeed = 100000;
8
  hi2c2.Init.DutyCycle = I2C_DUTYCYCLE_2;
9
  hi2c2.Init.OwnAddress1 = 0;
10
  hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
11
  hi2c2.Init.DualAddressMode = I2C_DUALADDRESS_DISABLED;
12
  hi2c2.Init.OwnAddress2 = 0;
13
  hi2c2.Init.GeneralCallMode = I2C_GENERALCALL_DISABLED;
14
  hi2c2.Init.NoStretchMode = I2C_NOSTRETCH_DISABLED;
15
  HAL_I2C_Init(&hi2c2);
16

17
}

So sieht die Ausleseroutine aus
1
HAL_I2C_Mem_Read_IT(&hi2c2, 0x4B, Reg_Addr[0], Add_Length, Reg_MTCH6102, Size);

Alle ausgelesenen Bytes sind richtig nur das 2. nicht. Ich habe von 
Total Phase noch ein I2C Usb Adapter, damit funktioniert es.

Ich komme im Moment nicht weiter kennt jemand vielleicht das Problem?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren