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.

[参考译文] CC1311R3:仅上电时高功耗。

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1307810/cc1311r3-hi-power-consumption-only-at-powerup

器件型号:CC1311R3
主题中讨论的其他器件: ENERGYTRACE、CC1311P3、 UNIFLASHSysConfig

您好!

我们将在现有产品中使用 CC1311替换 CC430。 我们的产品通常使用最小可能电流、因为我们没有任何电池。  该产品基于从电气柜内其中一个相位的近磁场中获取的能量。

当 CC1311处于空闲模式时、固件已经可以正常运行、即使我们将进入睡眠模式并退出该模式也是如此。 当通过相位的电流为200mA 时、最重要的是一切都运行良好、如果我们使用200mA  并使用50mA、则情况也是如此。  

问题是我们需要使用50mA 上电。 在这种情况下、CC1311初始功耗过载、FW 会崩溃。  

简短的实验我做了更好的情况下是使用 FW 这是做的只有一件事:闪电 LED 一次在10秒(没有其他任务)。 该固件在50mA 启动时也会崩溃。 降低 CC1311R3的 CC1311 I CUT 引脚36 (5mm× 5mm RKP)的电流消耗。 当断开此引脚时、FW 工作正常、但我们注意到无法对 CC1311进行编程。

我 想知道如何配置 CC1311以启动时所需的最低功耗启动 、从而确保固件不会崩溃?

感谢您的热情支持。

Br、

 阿尔弗雷德。  

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

    尊敬的 Alfred:

    您能否在启动期间以及在器件停止工作并连接引脚36之前、与示波器共享 VDDS 和 VDDR 图表?

    您使用的是直流/直流转换器模式还是全局 LDO 模式?

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

    您好、Diago、

    请建议如何上传请求的图?

    Br、

     阿尔弗雷德。

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

    尊敬的 Diego:

    新年快乐!

    请找到以下 VDDS 和 VDDR 图链接、在50mA、100mA (故障) VS 500mA 上电后成功加电:

    https://drive.google.com/file/d/1GeNitqDucJci7YIP75jt0vld6ekWpBXz/view?usp=sharing

    https://drive.google.com/file/d/1cKePgYCDgdZFHBwVt0HhyrLrt7O1Vz9f/view?usp=sharing

      根据 TI 建议、我们将使用直流/直流转换器模式进行射频传输 (与 A/D 或 I/O 相同)。

    感谢您的大力支持。

    Br、

     阿尔弗雷德。

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

    阅读您的问题描述并非一切都清晰明了。 您从其中一个阶段编写50 mA 的- 200 mA。 但是、可用于 CC1311的电流是多少?  

    引脚36是 VDDS。 您使用的 LED 是否已连接到此引脚供电的 Dios 之一? LED 消耗多大的电流? 如果您拆下 LED、它是否工作正常?

    查看 VDDR 曲线图并比较500 mA 和500 mA 曲线图:

    50 mA:启动前电压看起来不是0。 是这样吗?为什么? 从图中很难看到、但稳态下的电压看起来低于500 mA 图。 有哪些价值?  

    500 mA:启动看起来很奇怪、我不记得看到 VDDR 在启动后两次下降到1.26V 的图。 这表示消耗的电流非常高。 这里发生什么情况?  

    查看此处的电流消耗曲线会非常有用。 你是否有一个仪器可以给你这个? 具有 EnergyTrace 的 Launchpad 就是一种选择。 然后尝试了解当 VDDR 降低时您在代码中执行的操作。  

    请注意、由于安全原因、共享驱动器对 TI 员工来说有点困难、我会将图表直接复制/粘贴到帖子中。   

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

    您好!

    我将按照问题顺序回答:

    50 mA - 200 mA 电流通过相位:我们的产品通过铁 CT 连接、铁 CT 会扭曲线路并使用磁场为电容器充电、该电容器用作我们产品的能量源(电容器不是电池)。 如果没有电流流经该相、则没有用于为我们的电容器充电的能量、因此产品将关闭。 在我们的例子中、当从500mA 开始时、能量足以为电容器充电、一切正常。 即使我们稍后 将500mA 的电流减小到50mA、产品仍能长时间使用磁场能量(30分钟以上经过验证)。 这意味着磁场发出的能量足以使产品保持预期工作。  

    如果我们在 产品关断足够长时间时开始使相位上的50mA 处于关断状态、则可以看到能源不足、因为与已开启的情况相比、在启动时 CC1311消耗的能源更多。 在这种情况下、电容器正在充电、但电压不足以保持 CC1311的启动状态。 在图中、您可以看到之前完成的最后一个测试停止时剩余的能量、这意味着电容器有一点电量。  

    当我们使用50mA 磁场的能量启动时、很难测量电流、但我们知道、如果我们不像上文所述那样处于 CC1311的启动状态、那么这足以使电路工作。

    引脚36: 根据 DS、我可以告诉以下信息:

    我们 按以下方式连接了 LED:

    我所做的测试是为了确定启动时 CC1311注入的哪个部分消耗了额外的电流、因此我使用了专用的 FW、该 FW 仅 在10秒内为 LED 闪电一次(无传输)。 如果我将移除 LED、则不会有任何指示灯工作正常。 LED 的电流消耗为20mA、闪烁时间为0.2-0.3mSec、我们将能够观察到。 通过此测试、主芯片电源 (引脚36)在 启动时功耗增大。  如果您有任何 文档共享如何通过 FW 配置内部主芯片电源并降低电流消耗、这将有助于解决问题。 也许我们不需要所有电路都工作或不需要部分电路延迟。

    50mA:电压不是0V、这是因为电容器是从上次尝试充电一点。 在500mA 下的稳态电压为1.7V、在50mA 下的电压为1.3V、因为根据我的理解、固件会崩溃。

    500mA:首先您是对的、您需要以下背景信息:

    我们将按照上文所述为电容器充电。 我们 仅在 VDD 电压为2.0V 及更高时使用 NCP300LSN20T1G 开关将电压转发到 CC1311、以防止在电容器充电时因上升电压的瞬变对 CC1311造成任何损坏。 看到两次迭代的原因是首次能量足以打开开关(2V)、但不足以为整个电路供电。 在电容器仍在充电的情况下进行第二次同样的尝试、然后第三次成功。 与我们设计的一样、这是一个正常操作。  

    我希望现在的画面更加清晰、可以让您提出建议。

    感谢您的支持。

    Br、

     阿尔弗雷德。

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

    尊敬的 Alfred:

    请您将图像直接上传到 e2e 吗? 当您在"插入"菜单中启动新答复时、有一个称为"图像/视频/文件"的按钮、允许您插入图像、也可以直接将图像复制并粘贴到文本框中。

    您还可以添加另一个图表、显示开关之前在50 mA 和500 mA 相电流两种情况下的电压。

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

    尊敬的 Alfred:

    2个其他问题:

    您是否将 TI-RTOS 用于您的 FW?

    控制 CC1311复位引脚的开关、您是直接从开关输出为 CC1311供电、还是控制将电压传递到 CC1311的 MOSFET 的开关?

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

    您好!

    我把自己的静音错误-请,建议如何改变它:-(.

    请在原理图中找到相关部分。 我将为您提供 TP3、TP6和 TP12上请求的测量值:

    VDDS 上请求的图片:

    50mA:

    500mA:

    我正在处理其他请求。

    请取消静音、以便我获取您的答案。

    Br、

      阿尔弗雷德。

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

    感谢提供原理图和 VDDS 图像。 当您上传其余图像时、还请添加 VDDR 图像。

    要取消静音、在网站右侧、您应该会看到 一个显示"开启回复通知"的按钮、单击此按钮可获取通知。

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

    您好!

    感谢您的快速反馈、我打开了它。

    我们在之前分享的 VDDR 图:

    50mA:

    500mA:

    我们 使用的是 CCS ver12、RT-RTOS、GNU v9.2.1编译器、TI-RTOS。

    将更新得更快。

    Br、

     阿尔弗雷德。

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

    谢谢、Alfred。 我无法访问图表,因为他们是通过谷歌驱动共享。  

    除 TP3、TP6和 TP12之外、如果可能、您还可以添加 NCP300的输出图。

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

    您好!

    请在下面查找请求的图:

    TP3 -黄色

    TP6 -绿色

    TP12 -蓝色

    U1-1 -粉色

    50mA:

    U1-1:

    500mA:

    U1-1:

    Br、

     阿尔弗雷德。

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

    尊敬的 Alfred:

    查看您的图片、我认为问题可能与您所使用的开关的阈值电压有关。  

    500 mA 相电流:

    在这里、我们可以看到开关输出开启和关闭4次(紫色迹线)、因为 当输出开启时、能量来自大容量电容器、这会带来电压 (绿色迹线) 低于开关的下限阈值电压时、该过程会再次重复3次、大容量电容器上的电压不会降至下限阈值电压以下。 这种情况可能起作用、因为很快会提供足够快的电流来为电容器和 CC1311的电容器再充电、从而使 CC1311正确启动。

    50 mA 相电流:

    在50 mA 情况下、开关的输出似乎仅开启一次、然后由于大容量电容器上的电压下降而关闭、而且不再开启。

    大容量电容器上的电压在开关关断后是否不再上升? 或者因为相电流减少了10倍、再次充电需要更长的时间吗?

    如果显著增大 C8、会出现什么情况? 我认为 、当开关导通时、增加此电容将延迟、从而允许大容量电容器在为 CC1311供电之前达到更高的电压。

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

    您好!

    您的分析是正确的、实际上在50mA、再次为电容器充电并进行第二次重试需要更长的时间。

    我们用47uF 代替 C8、代替0.47uF。NCP 栅极打开时间超过100毫秒、对于100mA 来说已经足够了、但对于50mA 来说仍然不够。

    我想指出我之前提到过的两件事、但没有得到任何反馈:

    1.为什么它可以 与 CC430一起使用、而且这里、我们遇到了使用 DS 时功耗和电压低于 CC430的问题? 可能有任何相关的配置主题?

    2.当我们从50mA 启动时,它会出现故障,但是当电流从200mA 下降到50mA 时,一切都会正常工作。  我们可以通过禁用启动时不需要的器件来降低更多 CC1311功耗、还是在几秒钟内将其延迟以便为电容器充电?

    Br、

     阿尔弗雷德。  

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

    尊敬的 Alfred:

    1. CC430与 CC1311的架构不同。 尽管 CC1311的有功电流消耗低于 CC430、但在启动期间、CC1311可能会消耗比 CC430更多的电流、这是因为 VDDS 总线上的22uF 电容器、 VDDR 总线上的22uF 电容器和去耦引脚上的1uF 电容器需要充电。 CC430参考设计 采用值更低的电容器。

    2.如果开关在不同的总线达到适当的水平之前被关闭,在代码中就没有太多可以做的,因为代码只有在总线达到适当的水平时才运行。

    我已经和其他同事讨论过这一点、我们还想了解另一个图、即在对 CC1311电容器充电时是否发生了开关关断。

    您能否在仅在 第一次尝试启动 CC1311时放大的同一示波器图上创建另一个图、显示 VDDS、VDDR、DCOUPL (引脚23)和 U1-1? 该图应显示开关启用和禁用的时间。

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

    尊敬的 Diego:

    感谢您的反馈。

    请注意、我们使用的是 RKP 5mmx5mm 封装、因此 DCOUPL 位于引脚#17。 要求的图如下:

    图例:

    • VDDS–黄色
    • VDDR -绿色环保
    • DCOUPL -蓝色
    • U1-1 -粉色

    50mA:

    500mA:

    请告知。

    Br、

      阿尔弗雷德。

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

    尊敬的 Alfred:

    感谢您发送编修。

    您是否可以将两次捕获的 x 轴上的分频比都更改为大约5ms/、而不是50ms/?

    我们希望看到信号尽可能延长、以使粉色迹线看起来更类似于下面所示的红色迹线:

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

    尊敬的 Diego:

    图如下所示:

    50mA:

    500mA:

    Br、

     阿尔弗雷德。

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

    尊敬的 Alfred:

    不同的电源域被正确打开、您应该有足够的时间将器件置于待机状态、以便大容量电容器充电更多时间。

    从 VDDS 变为高电平到开关断开、您有大约30ms 的时间。

    我制作了一个简单的测试应用、 在电路板初始化后开启 GPIO、关闭主线程中的 GPIO、并调用睡眠函数。 执行此操作的总时间约为12ms。 这与 TI-RTOS 和 gcc 配合使用。

    白色是 VDDS、而棕色是引脚切换:

    您能否 在电路板上执行类似操作并向我们发送图表? 应该同时进行。 确保切换没有负载的引脚。  

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

    尊敬的 Diego:

    根据您的建议、我们做了一个基本 FW、在加电后按照您的建议切换 GPIO。 固件在50mA、甚至在35mA 下都能正常工作。  请参阅下图、该图从50mA 开始:

    我们将更改插入到了 FW 中、并与其他尝试一起尝试、我们设法在50mA 仅加电。 这意味着我们成功地对电容器充电、甚至发送了首次发送指示给接收器。 问题是、在传输后、FW 仍然崩溃。 我们测量了产品上电后、发射前后的电流消耗、并注意到以下几点:

    1. 上电后的电流消耗在0.5mA 左右。

    传输后、电流不会按预期返回到0.5mA 并保持在4.5mA。  

    在我看来、#2是 FW 崩溃的原因、因为在50mA 电容器没有足够的能量。 我们当前正在对其进行调试、以确定它是否与发送器有关、或与我们在传输之前执行的其他操作有关、这些操作会消耗电流。

    1、  传输后应如何关闭发送器。  

    2.是否可以降低处理器频率? 对于我们的需求,它是足够的8MHz .

    3.是否可以在运行时更改为 LDO 模式?

    请 告知。

    谢谢。

       阿尔弗雷德。

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

    对于 TI-RTOS、如果 传输后没有挂起的任务、则器件应置于待机状态。

    2.可以将处理器频率降低2倍、但我认为这样不能解决您的电流消耗较高(可能是器件不会进入待机状态)以及无线电需要48 MHz 的问题。

    3.在运行期间无法更改 LDO 模式。 选择在 CCFG 中是固定的。

    您能否在进行传输的位置以及传输完成后共享代码、以了解器件似乎没有进入待机状态的原因?

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

    尊敬的 Diego:

    我们希望通过最初处理 CC1311P3来解决该问题。

    请就我们面临的问题提供咨询:

    我们在应用中使用微控制器 CC1311R3。

    为了进行编程和调试、我们采用 Code Compose Studio v12。

    从 任何位置开始、在任何地方芯片都无法再重新编程。 我们收到 一个错误、即程序员无法看到连接的器件、而同时使用 UniFlash 应用程序可以连接到器件。

    但是:应用程序会写入该器件被锁定。 使用 UniFlash 将其解锁后、我们可以对其进行一次编程、然后再次出现错误。

    该软件已安装并可与 CC1311P3评估板配合使用、但拒绝与 CC1311R3 板进行相同操作。

    可能是什么 原因?

    谢谢。

       阿尔弗雷德。

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

    尊敬的 Alfred:

    您是否对 CC1311R3和 CC1311P3使用相同的固件?

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

    尊敬的 Diego:

    我们正在进行所需的修改、以从 P3移动到 R3、但基本要素保持不变。 仅供参考、到目前为止我们还没有遇到这个问题。 您可以参考的任何操作都会导致该问题?

    我们可以采取什么措施来防止出现锁定问题?

    Br、

     阿尔弗雷德。

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

    尊敬的 Alfred:

    如果器件被锁定或解锁、则由 CCFG 设置控制。

    SET_CCFG_CCFG_TAP_DAP_0_CPU_DAP_ENABLE 控制访问。  您能否在 ccfg 文件中验证它是否设置为0xC5而不是0x00 。 您能否在此处共享文件以及是否还能共享链接器文件?

    有关 TRM 第11章 CCFG 设置的更多信息: https://www.ti.com/lit/ug/swcu191/swcu191.pdf

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

    尊敬的 Diego:

    感谢您的答复、它确实对我们有所帮助。 现在、我们面临着类似的问题、但略有不同:

    我们能够编译并运行基本代码(基于 LED、定制射频配置、射频传输、模数转换、低功耗模式)。

    当我们想要将某个项目增强到实际项目时、我们发现一个错误、即"器件已锁定"。

    唯一返回的方法是使用 UniFlash 实用程序解锁。

    下面是该错误的屏幕截图。

    此外、在基本项目(运行良好)和增强项目(已锁住消息堆栈)的下方配置。

    您能给我们建议在哪里更改配置吗?

    Buttonled.syscfg:

    /**
     * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
     * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
     * @cliArgs --device "CC1311R3RKP" --package "RKP" --part "Default" --rtos "tirtos7" --product "simplelink_cc13xx_cc26xx_sdk@7.10.02.23"
     * @versions {"tool":"1.16.2+3028"}
     */
    
    /**
     * Import the modules used in this configuration.
     */
    const CCFG        = scripting.addModule("/ti/devices/CCFG");
    const custom      = scripting.addModule("/ti/devices/radioconfig/custom");
    const rfdesign    = scripting.addModule("/ti/devices/radioconfig/rfdesign");
    const ADC         = scripting.addModule("/ti/drivers/ADC", {}, false);
    const ADC1        = ADC.addInstance();
    const ADC2        = ADC.addInstance();
    const ADC3        = ADC.addInstance();
    const Board       = scripting.addModule("/ti/drivers/Board");
    const GPIO        = scripting.addModule("/ti/drivers/GPIO", {}, false);
    const GPIO4       = GPIO.addInstance();
    const GPIO5       = GPIO.addInstance();
    const Power       = scripting.addModule("/ti/drivers/Power");
    const Settings    = scripting.addModule("/ti/posix/tirtos/Settings");
    const BIOS        = scripting.addModule("/ti/sysbios/BIOS");
    const Event       = scripting.addModule("/ti/sysbios/knl/Event");
    const Idle        = scripting.addModule("/ti/sysbios/knl/Idle", {}, false);
    const Idle2       = Idle.addInstance();
    const Mailbox     = scripting.addModule("/ti/sysbios/knl/Mailbox");
    const Error       = scripting.addModule("/ti/sysbios/runtime/Error");
    const SysCallback = scripting.addModule("/ti/sysbios/runtime/SysCallback");
    const Timestamp   = scripting.addModule("/ti/sysbios/runtime/Timestamp");
    
    /**
     * Write custom configuration values to the imported modules.
     */
    CCFG.xoscCapArray       = true;
    CCFG.enableBootloader   = true;
    CCFG.xoscCapArrayDelta  = 0xC1;
    CCFG.ccfgTemplate.$name = "ti_devices_CCFG_CCFGCC26XXTemplate0";
    
    custom.prop4                                              = ["custom433"];
    custom.radioConfigcustom433.$name                         = "ti_devices_radioconfig_settings_prop0";
    custom.radioConfigcustom433.carrierFrequency              = 433.9922;
    custom.radioConfigcustom433.symbolRate                    = 250.000;
    custom.radioConfigcustom433.deviation                     = 125.0;
    custom.radioConfigcustom433.rxFilterBw                    = "546.3";
    custom.radioConfigcustom433.txPower433                    = "10";
    custom.radioConfigcustom433.syncWord                      = 0xD391D391;
    custom.radioConfigcustom433.codeExportConfig.$name        = "ti_devices_radioconfig_code_export_param0";
    custom.radioConfigcustom433.codeExportConfig.symGenMethod = "Legacy";
    
    rfdesign.fbSub1g = "fb433";
    
    ADC1.$name              = "CONFIG_ADC_0";
    ADC1.referenceSource    = "VDDS";
    ADC1.inputScaling       = false;
    ADC1.referenceVoltage   = 1500000;
    ADC1.adc.adcPin.$assign = "DIO_18";
    
    ADC2.$name              = "CONFIG_ADC_1";
    ADC2.referenceSource    = "VDDS";
    ADC2.referenceVoltage   = 1500000;
    ADC2.inputScaling       = false;
    ADC2.adc.adcPin.$assign = "DIO_20";
    
    ADC3.$name              = "CONFIG_ADC_2";
    ADC3.referenceSource    = "VDDS";
    ADC3.referenceVoltage   = 1500000;
    ADC3.adc.adcPin.$assign = "DIO_22";
    
    GPIO4.mode               = "Output";
    GPIO4.$name              = "CONFIG_GPIO_GLED";
    GPIO4.initialOutputState = "High";
    GPIO4.gpioPin.$assign    = "DIO_8";
    
    GPIO5.$name           = "CONFIG_GPIO_SENSE_CONTROL";
    GPIO5.mode            = "Output";
    GPIO5.outputStrength  = "Low";
    GPIO5.gpioPin.$assign = "DIO_9";
    
    BIOS.assertsEnabled = false;
    BIOS.heapBaseAddr   = "__primary_heap_start__";
    BIOS.heapEndAddr    = "__primary_heap_end__";
    
    const Hwi           = scripting.addModule("/ti/sysbios/family/arm/m3/Hwi", {}, false);
    Hwi.enableException = false;
    
    const Clock      = scripting.addModule("/ti/sysbios/knl/Clock", {}, false);
    Clock.tickPeriod = 10;
    
    const Timer       = scripting.addModule("/ti/sysbios/family/arm/cc26xx/Timer", {}, false);
    Timer.rtc.$assign = "RTC0";
    
    Idle2.$name   = "powerIdle";
    Idle2.idleFxn = "Power_idleFunc";
    
    const Semaphore            = scripting.addModule("/ti/sysbios/knl/Semaphore", {}, false);
    Semaphore.supportsPriority = false;
    
    const Swi         = scripting.addModule("/ti/sysbios/knl/Swi", {}, false);
    Swi.numPriorities = 6;
    
    const Task             = scripting.addModule("/ti/sysbios/knl/Task", {}, false);
    Task.checkStackFlag    = false;
    Task.defaultStackSize  = 512;
    Task.idleTaskStackSize = 512;
    Task.numPriorities     = 6;
    
    Error.policy       = "Error_SPIN";
    Error.printDetails = false;
    
    const System           = scripting.addModule("/ti/sysbios/runtime/System", {}, false);
    System.abortFxn        = "System_abortSpin";
    System.exitFxn         = "System_exitSpin";
    System.extendedFormats = "%f";
    System.supportModule   = "SysCallback";
    
    /**
     * Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
     * version of the tool will not impact the pinmux you originally saw.  These lines can be completely deleted in order to
     * re-solve from scratch.
     */
    ADC1.adc.$suggestSolution = "ADC0";
    ADC2.adc.$suggestSolution = "ADC0";
    ADC3.adc.$suggestSolution = "ADC0";

    PanoramicPower。

    /**
     * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
     * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
     * @cliArgs --device "CC1311R3RKP" --package "RKP" --part "Default" --rtos "tirtos7" --product "simplelink_cc13xx_cc26xx_sdk@7.10.02.23"
     * @versions {"tool":"1.16.2+3028"}
     */
    
    /**
     * Import the modules used in this configuration.
     */
    const CCFG        = scripting.addModule("/ti/devices/CCFG");
    const custom      = scripting.addModule("/ti/devices/radioconfig/custom");
    const rfdesign    = scripting.addModule("/ti/devices/radioconfig/rfdesign");
    const ADC         = scripting.addModule("/ti/drivers/ADC", {}, false);
    const ADC1        = ADC.addInstance();
    const ADC2        = ADC.addInstance();
    const ADC3        = ADC.addInstance();
    const GPIO        = scripting.addModule("/ti/drivers/GPIO");
    const GPIO4       = GPIO.addInstance();
    const GPIO5       = GPIO.addInstance();
    const Power       = scripting.addModule("/ti/drivers/Power");
    const RF          = scripting.addModule("/ti/drivers/RF");
    const Timer       = scripting.addModule("/ti/drivers/Timer", {}, false);
    const Timer1      = Timer.addInstance();
    const Settings    = scripting.addModule("/ti/posix/tirtos/Settings");
    const BIOS        = scripting.addModule("/ti/sysbios/BIOS");
    const Event       = scripting.addModule("/ti/sysbios/knl/Event");
    const Idle        = scripting.addModule("/ti/sysbios/knl/Idle", {}, false);
    const Idle2       = Idle.addInstance();
    const Mailbox     = scripting.addModule("/ti/sysbios/knl/Mailbox");
    const Error       = scripting.addModule("/ti/sysbios/runtime/Error");
    const SysCallback = scripting.addModule("/ti/sysbios/runtime/SysCallback");
    const Timestamp   = scripting.addModule("/ti/sysbios/runtime/Timestamp");
    
    /**
     * Write custom configuration values to the imported modules.
     */
    CCFG.xoscCapArray            = true;
    CCFG.xoscCapArrayDelta       = 0xC1;
    CCFG.dioBootloaderBackdoor   = 15;
    CCFG.levelBootloaderBackdoor = "Active low";
    CCFG.CpuDap                  = false;
    CCFG.PwrprofTap              = false;
    CCFG.enableBootloader        = true;
    CCFG.ccfgTemplate.$name      = "ti_devices_CCFG_CCFGCC26XXTemplate0";
    
    custom.prop4                                                      = ["custom433"];
    custom.radioConfigcustom433.$name                                 = "ti_devices_radioconfig_settings_prop1";
    custom.radioConfigcustom433.carrierFrequency                      = 433.9992;
    custom.radioConfigcustom433.symbolRate                            = 249.939;
    custom.radioConfigcustom433.deviation                             = 126.8;
    custom.radioConfigcustom433.rxFilterBw                            = "546.3";
    custom.radioConfigcustom433.syncWord                              = 0xD391D391;
    custom.radioConfigcustom433.fixedPacketLength                     = 12;
    custom.radioConfigcustom433.txPower433                            = "10";
    custom.radioConfigcustom433.packetLengthRx                        = 32;
    custom.radioConfigcustom433.codeExportConfig.$name                = "ti_devices_radioconfig_code_export_param1";
    custom.radioConfigcustom433.codeExportConfig.txPower              = "txPowerTable_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.txPowerSize          = "TX_POWER_TABLE_SIZE_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.rfMode               = "RF_prop_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.overrides            = "pOverrides_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropRadioDivSetup = "RF_cmdPropRadioDivSetup_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdFs                = "RF_cmdFs_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdTxTest            = "RF_cmdTxTest_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdRxTest            = "RF_cmdRxTest_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropTx            = "RF_cmdPropTx_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropRx            = "RF_cmdPropRx_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdNop               = "RF_cmdNop_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdRadioSetup        = "RF_cmdRadioSetup_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdFsOff             = "RF_cmdFsOff_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdSyncStopRat       = "RF_cmdSyncStopRat_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdSyncStartRat      = "RF_cmdSyncStartRat_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdResyncRat         = "RF_cmdResyncRat_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdCount             = "RF_cmdCount_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdFsPowerup         = "RF_cmdFsPowerup_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdFsPowerdown       = "RF_cmdFsPowerdown_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdSchImm            = "RF_cmdSchImm_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdCountBranch       = "RF_cmdCountBranch_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPatternCheck      = "RF_cmdPatternCheck_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropTxAdv         = "RF_cmdPropTxAdv_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropRxAdv         = "RF_cmdPropRxAdv_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropCs            = "RF_cmdPropCs_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropRadioSetup    = "RF_cmdPropRadioSetup_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropRxSniff       = "RF_cmdPropRxSniff_custom433_1";
    custom.radioConfigcustom433.codeExportConfig.cmdPropRxAdvSniff    = "RF_cmdPropRxAdvSniff_custom433_1";
    
    rfdesign.fbSub1g = "fb433";
    
    ADC1.$name              = "CONFIG_ADC_0";
    ADC1.referenceSource    = "VDDS";
    ADC1.inputScaling       = false;
    ADC1.referenceVoltage   = 2500000;
    ADC1.adc.$assign        = "ADC0";
    ADC1.adc.adcPin.$assign = "DIO_18";
    
    ADC2.$name              = "CONFIG_ADC_1";
    ADC2.referenceSource    = "VDDS";
    ADC2.inputScaling       = false;
    ADC2.referenceVoltage   = 1500000;
    ADC2.adc.$assign        = "ADC0";
    ADC2.adc.adcPin.$assign = "DIO_20";
    
    ADC3.$name              = "CONFIG_ADC_2";
    ADC3.referenceSource    = "VDDS";
    ADC3.inputScaling       = false;
    ADC3.referenceVoltage   = 1500000;
    ADC3.adc.$assign        = "ADC0";
    ADC3.adc.adcPin.$assign = "DIO_22";
    
    GPIO4.mode            = "Output";
    GPIO4.$name           = "CONFIG_GPIO_SENSE_CONTROL";
    GPIO4.outputStrength  = "Low";
    GPIO4.gpioPin.$assign = "DIO_9";
    
    GPIO5.$name              = "CONFIG_GPIO_GLED";
    GPIO5.mode               = "Output";
    GPIO5.initialOutputState = "High";
    GPIO5.gpioPin.$assign    = "DIO_8";
    
    RF.xoscNeeded = false;
    
    Timer1.$name                       = "CONFIG_TIMER_0";
    Timer1.timerType                   = "32 Bits";
    Timer1.timerInstance.$name         = "CONFIG_GPTIMER_0";
    Timer1.timerInstance.timer.$assign = "GPTM0";
    
    BIOS.assertsEnabled = false;
    BIOS.heapBaseAddr   = "__primary_heap_start__";
    BIOS.heapEndAddr    = "__primary_heap_end__";
    
    const Hwi           = scripting.addModule("/ti/sysbios/family/arm/m3/Hwi", {}, false);
    Hwi.enableException = false;
    
    const Clock      = scripting.addModule("/ti/sysbios/knl/Clock", {}, false);
    Clock.tickPeriod = 10;
    
    const Timer_1       = scripting.addModule("/ti/sysbios/family/arm/cc26xx/Timer", {}, false);
    Timer_1.rtc.$assign = "RTC0";
    
    Idle2.$name   = "powerIdle";
    Idle2.idleFxn = "Power_idleFunc";
    
    const Semaphore            = scripting.addModule("/ti/sysbios/knl/Semaphore", {}, false);
    Semaphore.supportsPriority = false;
    
    const Swi         = scripting.addModule("/ti/sysbios/knl/Swi", {}, false);
    Swi.numPriorities = 6;
    
    const Task          = scripting.addModule("/ti/sysbios/knl/Task", {}, false);
    Task.checkStackFlag = false;
    Task.numPriorities  = 6;
    
    Error.policy       = "Error_SPIN";
    Error.printDetails = false;
    
    const System           = scripting.addModule("/ti/sysbios/runtime/System", {}, false);
    System.abortFxn        = "System_abortSpin";
    System.exitFxn         = "System_exitSpin";
    System.extendedFormats = "%f";
    System.supportModule   = "SysCallback";

    Br、

      阿尔弗雷德。

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

    尊敬的 Diego:

    有任何反馈吗?

    Br、

      阿尔弗雷德。

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

    尊敬的 Alfred:

    很抱歉耽误你的时间。 我看了 SysConfig 文件、并注意到在名为 PanoramicPower 的文件中、您禁用了调试访问:

    如果未选中 CPU_DAP、器件将锁定、必须停止此行为、选中 CPU_DAP 旁边的框。

    您可以在 SysConfig 的"Device configuration"中找到此设置。