Это не принципиально- как с гита скачать. Можно и просто текст скопировать было.
Тем не менее, вопрос остается.
Попробую еще раз переформулировать его.
есть ф-я weak, которая была переписана.
Код
void HAL_I2C_SlaveRxCpltCallback(I2C_HandleTypeDef *I2cHandle)
{
/* Turn LED6 on: Transfer in reception process is correct */
BSP_LED_On(LED6);
}
Я так понимаю, что если нам при приеме надо что-то делать, то это именно она. Тут она зажигает LED. Можно обойтись без нее? Думаю, да. Судя по коду.
Дальше, есть вызов ф-и в main() ,но до вечного цикла
Код
if(HAL_I2C_Slave_Receive_IT(&I2cHandle, (uint8_t *)aRxBuffer, RXBUFFERSIZE) != HAL_OK)
{
/* Transfer error in reception process */
Error_Handler();
}
Получается, надо единожды передать ей массив и размер и структуру?
Дальше само на прерываниях будут приниматься значения в массив?
дополню вопрос- чтобы еще раз получить сообщение в режиме слейва мне что надо сделать? Ждать, пока массив обновится или вызывать повторно эту ф-ю?
Вот что не ясно.