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.

[参考译文] CCS/CC3235MODSF:IS 和#39;漏极开路和#39;CC3235SF 支持的模式

Guru**** 2560390 points


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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/968940/ccs-cc3235modsf-is-open-drain-mode-supported-on-the-cc3235sf

器件型号:CC3235MODSF

工具/软件:Code Composer Studio

我正在尝试实现一个到温度传感器器件的单线制接口。

为此、我理想情况下需要 GPIO 引脚能够在开漏模式下运行、并且在悬空时能够被读取为输入(即写入端口位的"1")

CCS 中的 SYSCFG 似乎提供了这种可能性、但文档 SRWU543A 并未将这种可能性作为 GPIO 的一般可能性、仅当 GPIO 配置为 I2C 数据引脚或类似引脚时。

顺便说一下、虽然"开漏"似乎正常工作、因为如果我向输出写入"1"、它可以由外设保持低电平、当我读回该位时、我认为我将获得输出锁存器的状态、而不是物理引脚的状态。

我想我可以通过动态重新配置 GPIO 引脚来实现我想要的目标、但这有点乱、单线总线的时序相当紧张。  我可能需要使用第二个输入来读取引脚、而不是使单个引脚四舍五入。

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

     尊敬的 Chris:

    没错。 当多路复用至 I2C 外设开漏功能不可用。 只有当多路复用到 GPIO 外设时、它才起作用。 您将需要动态重新配置引脚或使用另一个引脚来测量它。  

    BR、

    Vince  

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

    尊敬的 Vince:

    感谢您的回答。  

    在此期间、我发现 SWRU543A 第16节- I/O 焊盘和引脚多路复用(我之前在 GPIO 下查看过)中描述了一些开漏、上拉、下拉的详细信息。

    我最终确实让它正常工作、但只能动态重新配置引脚、并且需要一段时间才能找到一种方法、而不会在引脚上产生不必要的转换。

    SDK 提供的 GPIO_setConfig()的速度仅足以实现温度传感器(DS1820)的一线制。  如果我可以在这个项目上找到更多的时间、我可以尝试直接写入 GPIO_PAD_CONFIG_xx 寄存器-在我的用例中、GPIO_setConfig 中有很多不需要的内容。

    SWRU543A、第619页显示了 CONFMODE 的四个位、但并未对此进行全面说明。  如果我能找到有关如何对这些位进行解码的详细文档、我怀疑可以对这些位进行操作以实现我需要的功能。

    现在标记为"已解决"。  我将询问一个有关 CONFMODE 位的相关问题。