diff --git a/cores/arduino/stm32/twi.c b/cores/arduino/stm32/twi.c index 2c3ad39804..44c8e9fc34 100644 --- a/cores/arduino/stm32/twi.c +++ b/cores/arduino/stm32/twi.c @@ -548,14 +548,14 @@ void HAL_I2C_AddrCallback(I2C_HandleTypeDef *hi2c, uint8_t TransferDirection, ui if(obj->i2c_onSlaveTransmit != NULL) { obj->i2c_onSlaveTransmit(); } - HAL_I2C_Slave_Sequential_Transmit_IT(hi2c, obj->i2cTxRxBuffer, + HAL_I2C_Slave_Sequential_Transmit_IT(hi2c, (uint8_t *) obj->i2cTxRxBuffer, obj->i2cTxRxBufferSize, I2C_LAST_FRAME); } else { obj->slaveRxNbData = 0; obj->slaveMode = SLAVE_MODE_RECEIVE; /* We don't know in advance how many bytes will be sent by master so * we'll fetch one by one until master ends the sequence */ - HAL_I2C_Slave_Sequential_Receive_IT(hi2c, &(obj->i2cTxRxBuffer[obj->slaveRxNbData]), + HAL_I2C_Slave_Sequential_Receive_IT(hi2c, (uint8_t *) &(obj->i2cTxRxBuffer[obj->slaveRxNbData]), 1, I2C_NEXT_FRAME); } } @@ -576,7 +576,7 @@ void HAL_I2C_ListenCpltCallback(I2C_HandleTypeDef *hi2c) if((obj->i2c_onSlaveReceive != NULL) && (obj->slaveMode == SLAVE_MODE_RECEIVE)) { if(obj->slaveRxNbData != 0) { - obj->i2c_onSlaveReceive(obj->i2cTxRxBuffer, obj->slaveRxNbData); + obj->i2c_onSlaveReceive((uint8_t *) obj->i2cTxRxBuffer, obj->slaveRxNbData); } } obj->slaveMode = SLAVE_MODE_LISTEN; @@ -601,7 +601,7 @@ void HAL_I2C_SlaveRxCpltCallback(I2C_HandleTypeDef *hi2c) } /* Restart interrupt mode for next Byte */ if(obj->slaveMode == SLAVE_MODE_RECEIVE) { - HAL_I2C_Slave_Sequential_Receive_IT(hi2c, &(obj->i2cTxRxBuffer[obj->slaveRxNbData]), + HAL_I2C_Slave_Sequential_Receive_IT(hi2c, (uint8_t *) &(obj->i2cTxRxBuffer[obj->slaveRxNbData]), 1, I2C_NEXT_FRAME); } }