/* Function called from I2C IRQ Handler when RXNE flag is set Function is in charge of retrieving received byte on I2C lines.  */
void Slave_Reception_Callback(void)
/* Function called from I2C IRQ Handler when RXNE flag is set Function is in charge of retrieving received byte on I2C lines.  */
void Slave_Reception_Callback(void)
{
  aSlaveReceiveBuffer[ubSlaveReceiveIndex++] = LL_I2C_ReceiveData8(I2C1);
  if(Buffercmp8((uint8_t*)aSlaveReceiveBuffer, (uint8_t*)(aCommandCode[0][0]), (ubSlaveReceiveIndex-1)) == 0)
  {
    ubSlaveInfoIndex = SLAVE_CHIP_NAME;
    ubSlaveNbDataToTransmit = strlen(aSlaveInfo[ubSlaveInfoIndex]);
    pSlaveTransmitBuffer = (uint8_t*)(aSlaveInfo[ubSlaveInfoIndex]);
  }
  else if(Buffercmp8((uint8_t*)aSlaveReceiveBuffer, (uint8_t*)(aCommandCode[1][0]), (ubSlaveReceiveIndex-1)) == 0)
  {
    ubSlaveInfoIndex = SLAVE_CHIP_REVISION;
    ubSlaveNbDataToTransmit = strlen(aSlaveInfo[ubSlaveInfoIndex]);
    pSlaveTransmitBuffer = (uint8_t*)(aSlaveInfo[ubSlaveInfoIndex]);
  }
}