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

cc3200 I2C sht20

 请教一下大家, CC3200 通过 I2C 怎么读取 温湿度传感器 SHT20。

Viki Shi:

可以参考这边的I2C 例程: http://processors.wiki.ti.com/index.php/CC32xx_I2C_Application

th smi:

回复 Viki Shi:

一开始 就会参考 I2C Demo。  但是读写数据, 返回值都是 -1。 不知道什么原因?  0x80 位读地址, 0x81为写地址

aucDataBuf[0] = 0xf3;

I2C_IF_Write(0x80, aucDataBuf,1,1);

 I2C_IF_Read(0x81, aucDataBuf, 2);

th smi:

回复 th smi:

I2C_MASTER_ERR_ADDR_ACK  这个错误代表什么?  是地址不对吗?  读0x81 写0x80

Viki Shi:

回复 th smi:

这个是地址应答错误,还有其他报错吗?

th smi:

回复 Viki Shi:

刚才的错误解决了,是地址写错了。

现在是 I2C_IF_Write(0x40, aucDataBuf,1,0);    ucStop 写0 可以, 写1   程序在这里死循环:

RET_IF_ERR(I2CTransact(I2C_MASTER_CMD_BURST_SEND_STOP));

如果在Write的时候, ucStop 写0 ,  让写操作成功。

在 I2C_IF_Read(0x40, aucDataBuf, 2);  读的时候, 也卡死在

RET_IF_ERR(I2CTransact(I2C_MASTER_CMD_BURST_SEND_STOP));

请教一下是什么原因?

th smi:

回复 th smi:

这个问题,可能和 sht20 I2C 通讯, 需要CRC有关。 但我不知道怎么加CRC。 请教一下怎么加?

th smi:

回复 th smi:

cc3200 I2C 会不会有bug,(i2c_if.c)   设置了timeout, 但一直在死循环。

赞(0)
未经允许不得转载:TI中文支持网 » cc3200 I2C sht20
分享到: 更多 (0)