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

TMP116

大家好,我是最近再使用CC2640R2F launchpad的新手

看了I2Ctmp007的example有些問題想請教一下

若tmp007改成tmp116的話

可以直接用i2ctmp007的範例去更改嗎?

若可以,需要更改哪裡呢?

YiKai Chen:

可以、就是去改I2C_transfer

Viki Shi:

I2C的功能实现是类似的,但是tmp007和tmp116之间的区别需要注意,包括IO脚以及硬件结构,两者具体区别建议你到传感器板块咨询一下

user5774440:

回复 YiKai Chen:

YiKai Chen 你好
不好意思我不知道I2C_transfer在哪裡?還有要跟改的地方?是要去TMP116的datasheet裡尋找?
請問可以舉例更改的地方?

da qin zheng sheng:

首先需要修改芯片的硬件i2c地址

da qin zheng sheng:

还有留意芯片寄存器部分的不同

user5774440:

回复 YiKai Chen:

YiKai Chen 你好

TMP116的datasheet裡寫TMP116的位址是(0x48)

我更改了Board.h的#define Board_TMP_ADDR (0x48)

請問還有哪邊需要更改?

請問需要更改的文件是I2Ctmp007.c的?

user5774440:

回复 YiKai Chen:

YiKai Chen 你好
不好意思,再請問需不需要改下面
#define TMP007_DIE_TEMP0x0001/* Die Temp Result Register */
#define TMP007_OBJ_TEMP0x0003/* Object Temp Result Register */
變成
#define TMP007_DIE_TEMP0x00
#define TMP007_OBJ_TEMP0x01

請問這邊需要更改嗎?
temperature = (rxBuffer[0] << 6) | (rxBuffer[1] >> 2);if (rxBuffer[0] & 0x80) {temperature |= 0xF000;}

YiKai Chen:

回复 user5774440:

原來的代碼txBuffer[0] = TMP007_OBJ_TEMP;只有用到TMP007_OBJ_TEMP所以我之前的回覆才會建議你直接把txBuffer[0] 改成0x00,temperature 的部份應該不用改

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