0

单片机:STM32L系列

协议:SMBUS

如何让量规 IC 知道我想读的是一个字而不是一个字节?

我想要的结果。它在发送命令 0x09 后读取字。

我做了什么。它只读取一个字节...

我将大小参数设置为 2 在接收函数中......但它仍然只读取一个字节。

...
  return_value = HAL_SMBUS_Master_Transmit_IT(&hsmbus1, BMS_Addr, buff_Tx_Block, 1, SMBUS_FIRST_FRAME); 
  while(HAL_SMBUS_GetState(&hsmbus1) != HAL_SMBUS_STATE_READY) 
  if (return_value != HAL_OK)
  {
    return return_value;
  }
  return_value = HAL_SMBUS_Master_Receive_IT(&hsmbus1, BMS_Addr, buff_Tx_Block+1, 2, SMBUS_LAST_FRAME_NO_PEC);
  while(HAL_SMBUS_GetState(&hsmbus1) != HAL_SMBUS_STATE_READY) 
  if(return_value != HAL_OK)
  {
    return return_value;
  }
...
4

0 回答 0