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.

[参考译文] PCF8575:使用 PCF8575引脚作为输入

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1059439/pcf8575-using-pcf8575-pins-as-input

器件型号:PCF8575
主题中讨论的其他器件: SN74HC14

尊敬的 TI 技术支持团队:

我设计了一个 PCB 来读取5个 TCRT5000传感器输出。 我将 TCRT5000输出连接到74HC14D 施密特触发器、并使用 PCF8575引脚读取施密特触发器(高电平或低电平)的输出。 以前、我使用 PCF8575来扩展我的 MCU 输出引脚。 对于此电路板、我的目标是增加 MCU 的输入引脚数量。 我的具有 PCF8575的 MCU 板和 PCB 板是两个单独的板、我将使用电缆(3.3V、GND、SCL、SDA)连接它们。

当我用3.3V 和 GND 为电路板供电(并且不连接 MCU SCL SDA 引脚)、并且检查 PCF8575输入(或者74hc14d 的输出)的输入时、它的运行方式符合预期(当传感器看到黑色或白色表面时、 PCF8575输入为高电平或低电平、与预期一样)。 但是、当我将 SCL SDA 连接到电路板并将代码上传到 MCU (我将 PCF8575引脚定义为输入)、然后检查 PCF8575的输入(使用软件或万用表)时、它始终处于低电平(我无法在 PCF8575的引脚上看到高电平、无论传感器看到什么表面)。  我已将电路板原理图附在此问题上。

我已阅读 PCF8575的数据表、并在此论坛中回答了有关此 IC 的一些问题。 我认为这个问题与将 PCF8575的引脚定义为我的代码中的输入有关。

您认为在 PCF8575输入引脚上使用一些10k 上拉电阻器至3.3V 能够解决该问题吗? 我可以通过代码解决该问题吗?  

提前感谢您的帮助、

阿赫迈特

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

    为了使引脚用作输入、您必须输出高电平(这是默认值)。

    您的代码如何初始化引脚? 您使用代码在引脚上测量的电压是多少?

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

    Ahmet、

    感谢您提供的信息和帮助。 正如 Clemens 正确指出的、初始化期间、引脚可能会初始化为低电平而不是高电平。 这将解释为什么 PCF8575的引脚在启动后下降至低电平。 PCF8575下拉时很强、这就是它能够克服 SN74HC14器件否则会产生高电平的信号的原因。 当配置为高电平时、信号较弱、并且应该允许高电平和低电平信号在 P 端口上显示。

    最棒的

    Danny

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

    您好!  

    感谢 Clemens 和 Dany 的帮助。

    实际上、我不会在启动期间初始化它们、我是说我直接将 PCF8575的引脚定义为输入、然后开始读取输入。 当 SN74HC14输出为低电平时、没有问题、但是当我希望输出为高电平时、我再次将其测量为低电平(使用万用表时为0.369 V)。 我尝试使用10k 上拉电阻器、但结果仍然相同。  

    正如您所建议的、在将引脚初始化和定义为输入并读取输入之前、我将从代码输出高电平。  

    我将通知您有关结果的信息、

    谢谢你

    阿赫迈特

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

    您好!  

    在将引脚定义为输入并进行读取之前、我添加了初始化。 问题已解决。  

    非常感谢你的帮助。

    阿赫迈特

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

    Ahmet、

    很高兴听到这个消息。 请记住、该器件没有输入/输出配置寄存器。 您写入器件的任何内容都会将 P 端口定义为高电平或低电平。

    [引用 userid="449242" URL"~/support/interface-group/interface/f/interface-forum 1059439/pcf8575-using -pcf8575-pns-as -input/3920435#3920435"]我直接将 PCF8575的引脚定义为输入,然后开始读取输入。

    因此、很明显、该步骤可能实际上已经将输出设置为低电平。

    感谢您的更新!

    最棒的

    Danny