Ответ на поставленный выше вопрос состоит в том, что да - правильный способ обработки пинга регистра - через HAL_I2C_Master_Transmit
.Эта функция будет передавать предоставленные данные - в этом случае адрес регистра на устройстве.Функция HAL_I2C_Mem_Write
является функцией более высокого уровня, которая ожидает, что вызывающая сторона записывает данные в регистр;следовательно, в самой функции, если вход size
равен 0 или pData
равен NULL
, драйвер выдаст HAL_ERROR
.