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.

[参考译文] CC3235SF:使用 IO 保持是否会增加休眠电流消耗、如果增加、增加多少

Guru**** 2539500 points
Other Parts Discussed in Thread: CC3235MODASF, SYSCONFIG, UNIFLASH, CCSTUDIO

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/952730/cc3235sf-does-the-use-of-io-retention-increase-hibernate-current-consumption-and-if-so-by-how-much

器件型号:CC3235SF
主题中讨论的其他器件:CC3235MODASFSysConfigUNIFLASHCCStudio

我有一个定制的 CC3235MODASF 板、工作正常、但休眠模式下的电流消耗约为50uA、而不是数据表中的5uA。

我使用 IO 保持功能来确保输入不会悬空、并且输出(作为 FET 的输入)也不能悬空。

尽管在搜索 swra594a [网络子系统电源管理]、swru543a [技术参考手册]和器件数据表、但我找不到任何说明使用 IO 保持功能是否会增加功耗的信息。

我应该补充的是、我已经非常确定没有一个寄存的 IO 实际驱动任何电流-在所有情况下、输入基本上是开路的、输出驱动 MOSFET 的栅极、因此应该没有静态电流。

第二个问题-我的应用使用模块上的 GP30引脚42作为输出、这似乎无法停止-当然可以使用 CCS 版本10.0.00010中的 SysConfig 工具

发生这种情况时、即使是浮动输出、也不会影响电路板的其余部分、因此我可以使用它、但我只是想知道可屏蔽组中缺少这个输出的原因。

谢谢、

Chris

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

    尊敬的 Chris:

    IO 保持将保存到 OCR 寄存器中、休眠功耗应包括这一点。 50uA 肯定过高。 您使用的是定制板还是 CC3235MOD LaunchPad? 您是否已经完成 了硬件设计检查清单

    GPIO30的 SysConfig 选项可能存在问题、我将对此进行检查。

    此致、

    Sarah

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

    我认为我已正确遵循了设计检查清单。

    我可能找到了以下内容:

    使用"Scope,我可以看到 SOP 线在加电时开始低电平-这是我所期望的,因为数据表表明它们在模块内有100k 的下拉电阻。

    不过、一旦应用程序运行、我就会看到它们将达到3.3V (我的 Vbat 电压)。

    显然、当我进入引导加载程序进行编程时、我会将其中一个引脚(使用电阻器)上拉、但我是否曾意外地包含一个在应用启动后将其拉高的器件?

    谢谢、

    Chris

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

    尊敬的 Chris:

    您正在使用什么 SOP 配置? 为了澄清这一点、您是否在 SOP0 (MOD 引脚34)和 SOP1 (MOD 引脚24)上看到了该行为? 如果您添加外部下拉电阻而不是将这些引脚悬空、它会改变功耗吗?

    我还深入探讨了进入休眠模式时 IO 保持功能的行为。 它似乎不使用 SysConfig 中的引脚驻留结构(这仅适用于 LPDS)。 相反、它会在进入休眠之前将 GPIO 置于其当前状态。 您能否在进入休眠模式之前测试手动设置引脚并检查功耗的变化?

    此致、

    Sarah

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

    您好、Sarah、

    (抱歉、这个帖子相当长-似乎有几个可能相互关联的内容、因此我没有将它们拆分为单独的线程)

    感谢您提供有关 I/O 停车的提示。  应用程序绝对会在启动时将 GPIO 30设置为输出、并在进入休眠模式之前明确强制 GPIO 30 (以及其他5个)为"高电平"。

    对于 SOP 问题、当电路板运行时、我将所有 SOP 输入保持开路-即000。

    (编程期间、我将使用10k 电阻器将 SOP2拉至高电平

    但是、如果我"处理 startupp 上的 SOP 行、我会得到以下跟踪。  黄色表示系统电源、然后向下显示屏幕 SOP0、SOP1、SOP2。

    正如预期的那样、SOP0和 SOP1在整个时间内保持低电平。

    但是、您可以看到、SOP2在上电后的短时间内脉冲为高电平、在一段时间内变为低电平、然后无限期保持高电平。

    我的应用在大约8秒的时间内将电路板置于"休眠"状态、因此 SOP2在进入休眠状态时仍然保持高电平(在8秒内、即在最后两个分区内)

    放大到200ms/div 并隐藏 SOP0和 SOP1:

     我可以看到 、SOP2线路在加电后的大约14ms 被拉高。

    它在16ms 内保持高电平、然后变为低电平

    它保持低电平1.35秒、然后变为高电平。

    它保持高电平、即使在电路板在8秒进入休眠模式后也是如此。

    重新排列探针以使顶部走线为电源、第二条走线连接到 GPIO、我会考虑控制 LED 多路复用)和底部走线 SOP2:

    我可以看到、SOP2可能会在我调用 GPIO 初始化时变为高电平

    芯片断电时的直流测量确实意味着 VSS 具有100k 的静态电阻、因此这种行为会为我的待机电流提供33uA 的电流、这将在很大程度上解释过多的原因。

    数据表包含以下语句

    关于在休眠期间该行为"保持低电平"的说法似乎完全是错误的!

    我还从数据表中注意到、SOP2具有 GPIO25的改变自主。  自动生成的 GPIO 初始化是否正在尝试控制此引脚、即使在 CCI SysConfig GUI 中没有对其进行引用?

    正如所讨论的那样,GPIO30显然*未*完全正确配置是否是巧合?  也许某些本应到达 GPIO30的代码实际上是对 GPIO25进行编号?

    我很乐意将我的项目作为 PM 发送给您、但不愿意将其公开发布。

    提前感谢您的帮助

    Chris

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

    尊敬的 Chris:

    您能否重新添加您的图片或告诉我您所指的页面? 数据表中解释的硬件默认值与软件中实施的电源策略可能存在一些差异。

    能否将 ti_drivers_config.c 文件附加到此帖子? 这将位于项目的 Debug/syscfg 文件夹中。 它是生成的配置源、是 SysConfig 工具输出、因此不应包含敏感信息。

    此致、

    Sarah

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

    您好、Sarah、

    请查看下面的三张"我希望现在可以看到的照片"。

    您好、Sarah、

    我尝试重新插入"使用回形针图片的图像"(我找不到简单地"附加"文件的方法、似乎只能插入)

    我所提到的文档点位于 SWRS243、2020年2月版

    第一个是第25页的表4.2、与封装引脚23相关

    第二个是第37页的脚注5、表4-3

    我尝试在下面附加/插入 ti_drivers_config.c 文件-我只能看到一个文件夹的巨大图形。  也许它会对您有效?  作为"传送带和大括号"、我已将文件复制到 Dropbox、其中的公共链接为:

    www.dropbox.com/.../ti_drivers_config.c

    e2e.ti.com/.../6712.ti_5F00_drivers_5F00_config.c

    提前感谢您的帮助、

    Chris

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

    尊敬的 Chris:

    感谢您提供所有这些信息。 您的文件已正确通过、尽管我在软件中看不到会配置该引脚的任何内容。 我将请其中一位硬件工程师进一步提供帮助。

    此致、

    Sarah

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

    您好 Sarah -有什么想法、我们什么时候可能听到硬件方面的声音?

    谢谢、

    Chris

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

    尊敬的 Chris:

    我们审查了您的示波器捕获、我们相信仍有软件说明。

    您是否能够在 LaunchPad 上运行应用并观察到相同的 SOP2输出? 如果是、我可以尝试进一步调试我的设置。

    此致、

    Sarah

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

    我可以确认在我的 LaunchPad 板上发生相同的 SOP2行为

    顶部走线是复位线、底部走线是 SOP2

    启动时的事件序列如下:

    源文件 main_tirtos.c 创建并启动运行名为 MainThread()的过程的线程

    MainThread()调用两个子例程:

       PRCMIORetentionDisable (IO_RETAIN); //解锁引脚
       GPIO_init();

    GPIO_init() 是 SDK 的一部分。

    作为测试,我添加了一个 while (1);

    PRCMIORetentionDisable()语句之前的语句。

    我发现即使解锁从未被调用、并且 GPIO_init 从未被调用、SOP2线路*静态*也会变为高电平。

    这让我想知道是否在较低的级别发生了什么事情("BIOS?") 而不是 GPIO_init()区域中的错误。

    我花了一些时间来详细了解 GPIO_init()的工作原理,但我最后从各种数据表中得到了一个数据传输大脑,由焊盘编号、寄存器编号、IC 上的引脚编号、模块上的引脚编号组成。  但令我感到遗憾的是、迄今为止、我未能在我的脑海中建立一个一致的软件到硬件的画面!

    现在、当我对闪存进行编程时、我将 SOP2拉为高电平以强制模块进入引导加载程序模式。

    SOP2的这种状态是否可能被"记住"并以某种方式恢复?

    我应该补充的是、我在使用引导加载程序和 Uniflash 时遇到了适当的困难、发现使用带0b100的 SOP 是我可以使用 Uniflash 可靠地连接模块并对其进行编程的唯一方法。  我知道芯片应该在加电时与其他 SOP 组合一起短暂进入引导加载程序、但我无法使其正常工作。

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

    好的、我找到了一个权变措施。  在确定 SOP2线路在我获得控制之前以某种方式被配置为输出之后、我查看了 SysConfig 的内容、发现可以在我的项目中创建使用 SOP2引脚的 GPIO。

    通过明确地将该引脚构建为输入、我发现 SOP2线现在在启动时发出两次高电平脉冲。

    首先、在复位线变为高电平的12ms 之后、我们看到大约12.5ms 长的脉冲。

    第二、复位线变为高电平后大约1.1秒、第二个脉冲的持续时间大约为42ms、 我认为这是将 GPIO 设置为高输出的"神秘代码"、然后调用 GO GPIO_Init()使其成为输入-此时内部100k 下拉电阻可确保线路处于低电平

    现在、我正式成为快乐的 Bunny、我的休眠电流现在远低于5uA

    我仍然想知道我的"修复"是否只是涵盖了我应该解决的一个基本问题、但至少现在它不是一个操作问题。

    一如既往地感谢您、

    Chris

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

    尊敬的 Chris:

    我很高兴您找到了权变措施! 我将继续研究此问题、看看我们是否能够找出原因。

    您能否说明您使用的是哪个 CC32xx SDK 版本?

    此致、

    Sarah

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

    您好、Sarah、

    我使用的是 SDK 版本4_20_00_07

    CCS 10.0.0.00010

     SYS Config   1.4.0.1234   com.ti.ccstudio.sysconfig.feature.group   德州仪器(TI)

     适用于 CC32XX 的 TI-RTOS (IDE 客户端)   2.16.1.14   com.ti.rtsc.TIRTOSCC32XX.product.ui.feature.group   德州仪器(TI)

    我的 LaunchPad 使用模块的"MOD"版本、我的生产板使用"MOD"版本。

    以下是两款器件顶部的信息照片:

     _

    如果您需要任何其他版本信息、请告诉我

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

    只是想知道您是否能够在这方面取得进一步的进展?  我是否可以为您提供更多信息?

    最棒的

    Chris

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

    尊敬的 Chris:

    不幸的是,由于上周美国休假,我在这一问题上还没有取得进展。 我现在不需要任何进一步的信息、我将在本周尝试提供更新。

    此致、

    Sarah