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.

[参考译文] PROCESSOR-SDK-AM335X:AM3352、LM75A 温度传感器 I2C 总线驱动问题

Guru**** 657930 points
Other Parts Discussed in Thread: LM75A, AM3352, SYSCONFIG
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1016439/processor-sdk-am335x-am3352-problem-with-lm75a-temperature-sensor-i2c-bus-driving

器件型号:PROCESSOR-SDK-AM335X
主题中讨论的其他器件:LM75AAM3352SysConfig

您好!

我们使用 LM75A 温度传感器来测量定制板的温度值。

LM75A 温度 使用地址0x48直接连接到 am3352 I2C0总线(A2-A0接地)。

s35390a RTC 位于同一总线上(直接连接)、工作正常。 但是、LM75A 的温度读数始终为0。

I2C 时钟设置为400K。 (我们已经测试了100K 的速度、同样的问题。)

在测量 I2C SDA 信号后、我们发现有问题。

开始下拉(OP +地址)未按预期下拉至低电平。  它看起来像一个"╰"形状。

此外、当 am3352正在接收 数据时、I2C SDA 总线上存在一个奇怪的电平(大约0.8V)。

如果我们断开 LM75A 与 am3352的连接(保持 RTC 连接)、并测量 am3352的 I2C0 SDA 信号、则该信号看起来非常完美。

.dts 中的 I2C 引脚设置为 INPUT_PULLUP。

请提示我们解决此问题、谢谢!

-霍华德

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

    霍华德

    您的调试结果表明、LM75A 可能是问题所在、因为在移除 LM75A 后、LM75A 将实现完美运行。  

    但是、还有一些其他建议:

    1. 您无需启用 AM3352内部上拉电阻器- Pinmux/SysConfig 工具不会启用它们
      您应该在电路板上使用外部上拉电阻器。 启用 内部上拉电阻不会导致您看到的问题。   
    2. 您是否曾尝试保持 LM75A 连接并断开 RTC? 这样、您将看到它是真正的 LM75A、还是仅在连接两个器件时出现问题(解决问题?)  
    3. 示波器上的波形看起来存在争用。  RTC 是否也响应 LM75A 地址?  

    保罗  

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

    尊敬的 Paul:

    RTC 位于地址0x30、LM75A 位于地址0x48。

    &i2c0 {
    	pinctrl-names = "default";
    	pinctrl-0 = <&i2c0_pins>;
    
    	status = "okay";
    	clock-frequency = <400000>;
    
    	s35390a: rtc@30 {
    		compatible = "sii,s35390a";
    		reg = <0x30>;
    	};
    
    	lm75: lm75@48 {
    		compatible = "lm75";
    		reg = <0x48>;
    	};
    };

    我将 pinmux 设置为 PIN_INPUT 而不是 PIN_INPUT_PULLUP、结果相同。 (使用外部上拉电阻器。)

    2.您是否尝试保持 LM75A 连接并断开 RTC? 这样、您将看到它是真正的 LM75A、还是仅在连接两个器件时出现问题(解决问题?)  

    >好的! 我们将尝试移除 RTC 并执行进一步测试。

    谢谢!

    -霍华德