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.

[参考译文] CC3220MOD:首次启动问题

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1117893/cc3220mod-first-time-boot-issues

器件型号:CC3220MOD

我正在尝试找出电路板上 CC3220MODSF 首次启动问题的根本原因。

摘要:使用未编程的模块组装电路板。 在生产测试中、串行闪存(在模块中)是已编程的、而复位保持低电平有效、并且编程完成后、复位被置为无效。 延迟一段时间后、允许模块启动、会向 Wi-Fi 模块发送一些命令以检查其是否处于活动状态。 为了简化测试,我使用了两条命令,一条是读取 MAC 地址,另一条是每个操作之间存在一定延迟的循环中完成的 Clock_getTicks()。 那么、Wi-Fi 模块不响应的可能性是有限的。 这意味着在电路板上运行相同的测试100次、测试的可变百分比将失败。

更多详细信息:

串行闪存通过 SPI 编程、如 swra568中的第4章所述。 编程通过测试针完成。 编程完成后、缓冲区将设置为 high-z

 当模块复位无效时、我已经监控了 SPI 总线。  通道0为 FLASH_SPI_clk 、通道1复位。 这通常在模块没有响应时发生:

SPI 总线在2.5ms 内有效、这意味着永远不会读取串行闪存的内容。

在这种情况下、我发现执行额外复位有助于:

SPI 总线上的前2.5ms 与第一幅图完全相同。 首次引导后看到的 SPI 总线脉冲是读取 MAC 地址时的脉冲。 "Clock_getTicks()"将每秒返回0x6。

插入3. 复位:

 每次调用该模块时,该模块都会返回预期的 Clock_getTicks()值,读取 MAC 地址时,该模块在 SPI 总线上没有通信。  

有人能否解释为什么 Wi-Fi 模块在某些情况下需要额外的复位才能启动? 如果复位时间太短、也会失败。  

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

    您好、TheGhostOf、

    我将于星期一在这里跟进。 同时、您是否在闪烁时遇到过错误?  

    最棒的
    Jacob

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

    编程报告每次都完全相同。 此外、复位后的第一个~2.5ms SPI 流量在"工作"和"不工作"情况下完全相同、直到 SPI 活动在"不工作"情况下停止。  请参阅下面的两种情况、并排比较 SPI 总线上的4条线路。  

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

    您好、TheGhostOf、

    您能否 通过此链接提交设计审查? 我希望确保您的原理图符合我们的生产线指南。

    谢谢、
    Jacob

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

    我假设您参考以下文档 :https://www.ti.com/lit/an/swra568/swra568.pdf

    本文档在第4章中列出了以下要求:

    -串行闪存 SPI 接口引脚必须引出以与编程器进行物理接触(例如接头或测试垫)。

    TER:CC3220MODSF SPI 接口直接路由到测试点(3mm 至4mm 布线)、并且未连接到 PCB 上的任何其他元件、如下所示:

    -编程时、不得由任何其他源驱动 SPI 线路。

    TER:对串行闪存进行编程后、驱动编程夹具中 SPI 线路的缓冲器设置为 high-z

    - CC3220在编程期间保持复位状态以防止 I/O 争用

    TER:如逻辑分析仪图中所示、复位在编程完成前保持低电平。  

    由于 SPI 线路仅连接到测试点、您期望在回顾中看到更多内容、 并且在不同的文档中列出了更多用于 SPI 编程的指导线路?  

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

    您好!

    我们希望查看原理图、以确保您的设计遵循我们关于复位电路的指导原则。  

    谢谢、
    Jacob

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

    请参阅您所参考的重置指南行。 我唯一能够找到的是、RESET_N 线路应连接到主机 MCU、如果未针对所有运行条件定义 RESET 引脚的状态、则应将 VBAT_RESET 线路连接到 VDD 以使用内部100千欧姆电阻 上拉。  

    在本例中、我们使用连接到 VDD 的 VBAT_RESET 线路。 在首次引导时、这是这里的问题、RESET_N 线路由编程 JIG 控制。 逻辑分析仪图中显示了复位线的工作方式。 您能否分享一下您的思考过程、为什么外部复位电路会影响我们看到的问题、因为复位线路是主动控制的?  

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

    您好!

    我对复位电路的想法是、CC3220在通过 SPI 进行编程时保持复位状态。 我要添加一名团队成员、他可以在这里提供更多帮助。

    BR、

    Jacob

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

    Ghost、您好!

    TER 代表什么?

    您提到过这种情况在一定的时间内发生、并且在其他时间没有问题、因此听起来像是硬件问题。

    至于复位电路、我想检查您是否有任何元件与模块外部的复位连接、正如一些客户错误地那样。  

    如果您可以申请原理图和布局设计审查、以便我们首先确保您的设计是最佳的、并在进一步调试此问题之前遵循我们的指导原则、这将有所帮助。

    BR、

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

    我必须了解我愿意发送哪些内容以供回顾、因为很多内容都与 WiFi 无关。

    请您详细说明一下  

    "至于复位电路、我想查看您是否有任何元件与模块外部的复位连接、正如一些客户错误地那样。 "

     我在文档中找不到有关复位网络的任何建议、请参阅建议并提供错误示例。 此外、如前所述、复位线由测试夹具(在本例中为"主机 MCU")主动驱动。 只要逻辑分析仪 POLTA 显示复位线路为逻辑低电平/高电平、复位线路上的其他元件如何影响结果?  

    "ter 代表什么?":有些公司使用员工  姓名的3个字母缩写、这是我的90年中期以来的缩写、这也是我之前在 E2E 上使用的缩写。    

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

    幽灵

    没错、我记得在 E2E 上看到您的名字了。

    模块内部的 CC3220 IC 复位引脚上有一个100k 上拉电阻和10nF 电容(请参阅下图)。  

    一些客户向模块外部的复位电路添加电阻器和/或电容器、这会影响复位信号的上升/下降时间。

    BR、

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

    -此设计没有无源器件连接到复位线路。  

    -在正常操作下,WiFi 模块可从2个不同的信号源复位。 对于首次引导、复位线由编程 JIG 控制、而其它复位源位于 high-z 中

      在 https://www.ti.com/lit/ds/symlink/cc3220mod.pdf 中 、我找不到有关复位线路上上升/下降时间的任何限制。 未记录连接到复位线路的 RC 网络中的电容大小、我可以在这里找到有关 RC 网络的任何信息:

    "10.2.2复位模块采用内部 RC 电路在上电期间复位器件。 nRESET 引脚必须保持在0.6V 以下至少5ms、才能使器件成功复位。"

    BTW:

    "8.14.3器件复位当需要器件重新启动时、用户可以向 nRESET 引脚发出负脉冲。 用户必须确保正确应用复位:持续时间至少为200ms 的负复位脉冲(在引脚35上)。"

    10.2.2和8.14.3中为什么复位低电平时间不同?

    --

    上电时、RC 组件的尺寸很重要、以确保在上电时复位保持低电平。 但在这种情况下、我看不到有关该网络的任何信息、即在电源稳定的情况下主动驱动复位线路。   

    从原始帖子中的第一个图中可以看到、WiFi 模块在所有情况下都会启动(它开始从外部闪存读取)。 上述内容仍然不清楚、为什么由于复位线路上的组件的大小、它应该随机停止引导序列。 我想从 TI 方面了解一下该模块为什么会像它那样工作。   

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

    幽灵

    必须更新数据表这两个部分中的差异。 该模块的正确启动应在 VBAT 为高电平1ms 后 nRESET 斜升。  

    如果外部无源器件未连接到复位线路、并且您可以验证布局是否遵循我们的指导原则、则可能不是硬件问题。 但值得仔细检查设计、因此请在您确定可以与我们分享的内容后申请审查。

    BR、

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

    以下是几个硬件问题:

    从数据表中:

    "µF 路由电阻器和电池类型、TI 建议添加两个100 μ F 陶瓷电容器"

    我注意到、我们使用的值小于此处建议的值。 但是、当电路板由电源供电时、我看到的问题就会出现。 TI 是否有关于给定电源和布线电阻必须使用多大电容的更多详细信息?  

    '请勿在模块下方安装模块的层上铺设信号布线。'

    我看到、由于某种原因、我们使用引脚18 (4.4毫米)、21 (3.9毫米)、23 (3.3毫米)、24 (5.7毫米)、35 (2.5毫米)、42 (11.2毫米)完成了此操作。  TI 是否有任何关于如果某些信号在同一层上路由会发生什么情况的经验、或者这是否是通用建议?  

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

    幽灵

    当电路板由电源供电而不是电池供电时、CC3220MODSF 是否由不同的稳压器供电?

    根据 VBAT 电压电平、峰值校准电流可高达620mA。 当器件首次启动时完成校准。 请参阅 数据表中的第8.5节。 为 CC3220MODSF 供电的电路板上稳压器的最大电流输出是多少?

    陶瓷电容器越大、直流电压越稳定。 确保使用额定电压为10V 或更高的电容。 当模块复位时、您是否观察到电源轨上的显著压降?  

    不在模块下方运行信号布线的指导原则是确保模块下方有一个实心 GND 层、以实现稳定的系统最佳散热性能、与数据表状态相同。 因此、如果下面的 GND 平面不是稳定的、则模块可能会过热。 虽然我不能确定多少、但高温也会影响信号布线的导电性。

    BR、

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

    测量为 WiFi 模块供电的 VDD 当 WiFi 模块启动时、电源轨看起来正常、但为该模块供电的稳压器看起来不是校准电流消耗的尺寸。 这个电路板的设计人员本周已经离开、所以我必须在下周与他讨论校准和校准设置中的原因和注意事项(据我所知、它还可以在首次启动时之外的其他时间运行)  

    从数据表中可以看出、校准是在1.3启动期间的一个点完成的。 您是否更确切地知道它何时运行(在开始、中间、结束时)。 是多少?  

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

    幽灵

    有关器件校准模式的更多信息、请参阅此处 CC3220网络处理器 UG 的第4.9节

    如果您参考数据表中的表8-2、是否准确询问   1.35s T3窗口期间何时进行校准?  

    BR、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="276971" URL"~/support/wireless-connectivity/wi-fi-group/wi-fi-fi-fi-forum/11178933/cc3220mod-first-time-boot-issues/4158366#4158366]\n\n 如果您参阅数据表中的表8-2、您是否确切地询问   在1.35s 窗口期间进行校准的时间?  [/报价]

    是的

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

    幽灵

    我测量了器件上电时的电流消耗。 初始浪涌电流之后的小波形为24ms 长、因此这必须是硬件唤醒周期。  

    我测量了从这个小波形之后到下一个尖峰(如上图所示) 的时间、即校准、时间为~1.35s。 因此必须在结束时进行校准  

    BR、

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

    谢谢您、我将在下周更深入地了解更多人休假回来的情况。  

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

    幽灵

    当然可以。 随时向我们发送信息。  

    谢谢、

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

    我们在3.3V 网络上为模块使用22uF 电容(在磁珠的另一侧放置更多去耦电容)。 根据建议的电容大小、这是低端电容、但当我测量时、在复位被拉至高电平后、我仅在~1.3s 后看到几 mV 的纹波。 此外、如果您查看第一个帖子中的图、我会看到复位后大约1.1s 运行和不运行运行运行之间存在差异、这应该会排除校准电流是问题所在。  

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

    幽灵

    您提到、当您的电路板由电池供电时、这不是问题。

    主板与电池供电时、硬件有何区别?

    BR、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="276971" URL"~/support/wireless-connectivity/wi-fi-group/wi-fi-fi-fi-forum/11178933/cc3220mod-first-time-boot-issues/4163295#4163295"]您提到、当您的主板由电池供电时、这不是问题。

    我在哪里写过它在电池供电时工作? 首次启动始终在生产测试中完成、并且始终由电源供电。  

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

    幽灵

    当您说" 但当电路板由主电源供电时、我看到的问题就会出现"时、我便根据这一假设做出了。

    您是否在 CC3220MOD LaunchPad 上尝试过此操作?

    BR、

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

    我认为我之前已经对 Launchpad 进行过一些测试、但我不确定在这种情况下串行闪存是如何编程的。  

    我正在使用生产测试夹具、尝试调整夹具以对 Launchpad 而不是我们的电路板进行编程需要比目前更多的时间。 必须更改硬件、但我假设还必须根据模块的不同 Dios 等的用法为串行闪存创建新的 FW 映像。  

    当我阅读此主题时、TI 没有任何理论来说明为什么我需要在给定的时间内进行3次复位才能使其正常工作? 我使用的最后一次复位还应独立于硬件解决方案、是否在可能需要首次启动后复位的某个地方记录过?   

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

    嘿、TheGhostOf、

    很抱歉、我将在本周尝试进行测试。  

    BR、
    Jacob

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

    您是否成功测试了一些?

    您是否曾检查过为什么此模块(和芯片)没有勘误表? 仅 ARM 内核就存在已知故障、类似的复杂芯片必须包含勘误表中本应包含的内容。  

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

    您好!

    我与 TI 讨论了 CC32xx 的缺失勘误表。 但我从未得到满意的答案。 但我想为什么"真实"的公众不存在 SoC 本身的复杂性。 因为勘误表需要涵盖 NWP 和 MAC 固件的所有更改。 这似乎不现实...

    只是一个想法。 是否确定不会通过其他引脚意外为模块供电? 假设您已断开 UCC、但其他一些引脚保持连接(例如 UART RX)。 这可以通过引脚上的 ESD 保护二极管为模块部分供电。 这可能会导致卡在引导程序处。

    1月

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

    勘误表:可能是这种情况、因为我找不到类似非 TI 模块的勘误表。

    引导:引导时所有 SOP 引脚均为低电平。 在此模式下、我了解到器件对于其他引脚上的未定义状态应该相当不敏感? 此外、为什么它在 SPI 之后停止引导、但在2.5ms 内激活、如第一个帖子中的图所示?  

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

    您好!

    老实说、我无法说服 TI、更小的事情、如正确记录 NWP 的更改是合理的。

    当 UCC 未连接时、您是否已连接其他引脚? 该引脚处于高电平状态(例如上拉或高阻态)时、可能会对 MCU 进行部分供电 、并可能导致非常非常奇怪的行为。 这与市场上的任何其他低功耗 MCU 类似。 与 SOP 模式没有关系。 这是几乎所有低功耗硅器件的常见"特性"。 但是、如果您没有这样的连接、 那么这不是您问题的原因。

    1月