前提是需要已实现过i2c总线驱动
步骤
步骤分为几步:
- 创建设备 API_I2cAdapterCreate
- 传输消息 API_I2cDeviceTransfer
- 发送消息 API_I2cDeviceMasterSend
- 接收消息 API_I2cDeviceMasterRecv
- 删除设备 API_I2cDeviceDelete
示例
{
uint8_t data_buf[100]
LW_I2C_MESSAGE i2cWrMsg[2];
PLW_I2C_DEVICE pI2cDev;
pI2cDev = API_I2cDeviceCreate("/bus/i2c/0", "i2cdev", 0x60, 0);
API_I2cDeviceMasterSend("i2cdev", data_buf, 1);
API_I2cDeviceMasterRecv("i2cdev", data_buf, 1);
i2cWrMsg[0].I2CMSG_usAddr = 0x60;
i2cWrMsg[0].I2CMSG_usFlag = 0;
i2cWrMsg[0].I2CMSG_pucBuffer = (VOID*)&data_buf[1];
i2cWrMsg[0].I2CMSG_usLen = 1;
i2cWrMsg[1].I2CMSG_usAddr = i2cWrMsg[0].I2CMSG_usAddr;
i2cWrMsg[1].I2CMSG_usFlag = LW_I2C_M_RD;
i2cWrMsg[1].I2CMSG_pucBuffer = data_buf;
i2cWrMsg[1].I2CMSG_usLen = 1;
API_I2cDeviceTransfer("i2cdev", i2cWrMsg, 2);
}