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.

[参考译文] 编译器/CC2541:具有湿度/温度传感器的 CC2541 I2C

Guru**** 2551780 points
Other Parts Discussed in Thread: CC2541

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/579514/compiler-cc2541-cc2541-i2c-with-humidity-temperature-sensor

器件型号:CC2541

工具/软件:TI C/C++编译器

大家好、

我目前正在使用 CC2541进行一个项目、其中 SimpleBLEperipheral 作为基础项目。 现在、我想将其 I2C 功能与 Si7021-A20湿度/温度传感器结合使用、正如我所检查的、该传感器几乎与项目"sensorTag"使用的 SHT21相同。 我尝试复制所有函数(HalHumiReadData()、HalHumiWriteData()、HalHumiSelect()、HalHumiReadMeasurement()、HalHumiExecMeasurementStep()、 readHumData()和 sensorTag 内的事件,用于我的项目中的 SHT21传感器。 唯一的区别是事件已在启动过程中运行、并且 hData 的 DID SetParameter 将自动通知读数。 由于我包含了必要的头文件等、因此编译没有遇到任何问题 但我似乎无法使其正常工作、我在 hData 中读取零值。

谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您使用示波器检查 I2C SCK 和 SDA 线路、那么在读取传感器时是否会看到其上的信号?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    到目前为止,我没有机会使用示波器,但如果满足 HalHumiExecureMeasurementStep ()函数内的条件,我尝试将一个引脚设置为高电平(在以下情况下:1,如果(成功){将带有 LED 的引脚设置为高电平}…… "Success = HalHumiWriteCmd (0xF3);"在情况:0时出现。 如果我的观察结果是正确的、则情况0中的条件不是"成功"。 这是否意味着传感器在 SDA 处未接收到信号?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、再说一次、

    我设法使用逻辑分析仪读取 CC2541的 SDA 和 SDC、并注意到当传感器未连接时、SDC/SDA 的频率始终为高电平。 但是、当器件连接时、SDC 中会产生常规脉冲、我还注意到、即使我调整了 i2cClock、其频率也没有变化(仅约为1250Hz)。 它非常令人困惑。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我有一个后续问题、仅用于对 cc2541进行故障排除。
    假设 i2c 已在运行、命令已发送且时钟已设置、即使没有任何连接信号、我是否还应该在 SDA 和 SCL 上获得信号? 此外、如果在 SCL 中有信号、我是否应该期望一个"1/i2cClock_xxxKHZ"周期?
    谢谢。