This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3200:CC3200传感器标签。 TMP007红外温度传感器 I2C 锁定问题

Guru**** 2584495 points
Other Parts Discussed in Thread: HDC1000, CC3200, CC3200SDK

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/610171/cc3200-cc3200-sensor-tag-tmp007-infrared-temperature-sensor-i2c-lockup-issue

器件型号:CC3200
主题中讨论的其他部件:HDC1000、、

大家好、

我将大量 CC3200 Wifi 传感器标签与定制固件搭配使用、其中一些有时会进入无法读取 TMP007红外温度传感器上任何寄存器的状态。 I2C 外设驱动程序库函数 I2CMasterErr ()返回的错误代码为 I2C_MASTER_ERR_ADDR_ACK。 这一点、再加上我可以从 HDC1000等其他 I2C 传感器读取数据、使我认为问题在于 TMP007上的 I2C 模块被以某种方式置于不良状态。 我已经尝试了 TMP007数据表中描述的 I2C 复位过程;一个 START 条件、随后将 SCL 线路保持在低电平30ms、然后是 STOP 条件、并且它没有解决这个问题。 我无法对我知道的 TMP007进行功率循环、因为许多传感器标签部署在现场、因此它们通常会进行无线重新编程。

从器件没有将 SDA 线保持在低电平、我知道如果主器件的传输中断且从器件正在等待其余的传输、这是一个问题。 此外、在大约70%遇到此锁定问题的器件中、重新编程器件可解决此问题。 但在其余部分,这种情况仍然存在。 我还尝试切换时钟线以使从器件复位、但这也不起作用、我目前正在寻找想法。 如果大家对 CC3200、TMP007或 I2C 问题有任何看法或建议、我将不胜感激。

另请注意、我正在使用 CC3200SDK_1.1.0、我知道它已经过时、我已经了解了一些可能影响 I2C 的已知问题、但在这方面没有取得任何进展。

谢谢、

Justin

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你(们)好

    sensortag 是一款演示工具、设计为按原样使用、不会重新编程。

    您如何调试此项以查找错误代码? 您如何加载此自定义固件?

    此致、
    查尔斯·奥
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    提供的调试 DevPack

    Justin