STM32F03xxx I2C mehrere Bytes senden?!

OP #4948858
Lesenswert?

Nabend.

Ich frage mich, was für Routinen ich aufrufen muss, damit ich mehrere 
Bytes hintereinander seden kann, bzw. was ich konfigurieren muss, damit 
es funktioniert.
1
uint8_t I2C_WrBytes(I2C_TypeDef *I2Cx, uint8_t Addr, uint8_t Reg, uint8_t Value[], uint8_t NumOfBytes)
2
{
3
    uint32_t tme_out = 0;
4

5
  while(I2C_GetFlagStatus(I2Cx, I2C_FLAG_BUSY) == SET){}
6

7
  I2C_TransferHandling(I2Cx, Addr, 1, I2C_Reload_Mode, I2C_Generate_Start_Write);
8

9
  I2C_SendData(I2Cx, Reg);
10

11
  I2C_TransferHandling(I2Cx, Addr, NumOfBytes, I2C_AutoEnd_Mode, I2C_R);
12

13
    I2C_SendData(I2Cx, Value[x]);
14

15
  I2C_ClearFlag(I2Cx, I2C_FLAG_STOPF);
16

17
  return SUCCESS;
18
}

Also Adresse mit Nutzbyte klappt aufjedenfall...
Beitrag #4948950 wurde von einem Moderator gelöscht.

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