TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2640的I2C问题请教

我用CC2640 的I2C 模块给OPT3001光照芯片 写值,发现写不进去。该芯片寄存器是16位的,咱I2C模块可以写16位寄存器的值吗???

我就想给0x01寄存器写个0x54,0x10,代码如下:

void Set_OPT3001(uint8_t limit)
{

Reset_OPT3001_Register();

txBuffer[0] = 0x54;txBuffer[1] = 0x10;

i2cTrans.writeCount = 3;
i2cTrans.writeBuf = txBuffer;
i2cTrans.readCount = 0;
i2cTrans.readBuf = rxBuffer;
i2cTrans.slaveAddress = 0x44;

I2C_transfer(handle, &i2cTrans);
}

Kevin Qiu1:

分别写高/低八位试试

user6477475:

回复 Kevin Qiu1:

分别写的话调用这个I2C_transfer(handle, &i2cTrans)函数就阻塞了,那边没ACK响应。

YiKai Chen:

你要不要去參考一下 dev.ti.com/…/node opt3001的例程

赞(0)
未经允许不得转载:TI中文支持网 » CC2640的I2C问题请教
分享到: 更多 (0)