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.

[参考译文] CC3220:CC3220+CC2642

Guru**** 2535750 points
Other Parts Discussed in Thread: CC2642R, CC3220R

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/756707/cc3220-cc3220-cc2642

器件型号:CC3220

大家好、

我有几个问题要继续基于 CC3220+CC2642的设计:

 

1.     我是否需要 CC3220的所有3种类型的外部闪存?

2.   如果使用外部闪存而不是内部闪存、功耗的权衡是什么?

3.   如何更新 CC3220的软件? 是否仅使用外部闪存或 BT CC2642R 更新 WiFi 芯片?

4.   如果有一个外部存储器连接到 CC3220、并且我想将在 CC2642R 上收集的传感器数据保存在该存储器中、那么这种连接是否存在限制(通过 WiFi 芯片打开通道)?

谢谢、

Shlomi

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

    1.是的、所有 CC3220型号都需要外部串行闪存。 需要使用此存储器来支持网络处理器使用的文件系统、初始引导映像、OTA 更新等

    2.外部闪存是必需的,因此应在功率估算方面加以考虑。 外部串行闪存可通过网络处理器进行访问、这意味着由于网络处理器在闪存访问期间将打开、因此功耗将略有增加。

    3. CC3220从外部串行闪存引导(至少在 SF 上进行 OTA 更新之前)。 要执行软件更新,您将在文件系统中的 mcuimg.bin (或 mcuflashimg.bin)文件中写入新映像。 新软件的内容可以根据需要传送到器件、无论是通过物理连接(UART)还是无线连接(Wi-Fi 或 BLE)。 有关软件更新过程的完整详细信息、请查看我们的 OTA 更新应用报告。 本文档从通过 Wi-Fi 接口更新软件的角度介绍了该过程、但许多过程(以及许多 OTA 库)仍适用于其他设计。 特别是、您可以重复使用更新存档的设计和文件写入/提交过程来创建强大的软件更新解决方案。

    4.您是否提到创建两个 IC 共享外部串行闪存的设计? 为简单起见、我建议将数据从 CC2640R2传递到 CC3220器件、以便 CC3220在需要时将其存储在文件系统中。

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

    您好 Ben、

     

    感谢 您的详细答复。

     

    架构如下:CC2642是主器件、CC3220是从器件

    那么、如果我只将闪存连接到 CC3220、这是否仍然有意义?

    主器件(CC2642)通过从器件(CC3220)获取其图像?

    当我存储数据时,问题是刻录映像和引导

    此外、我还了解到有用于为两个器件设置 IO 的工具

    如果您事先了解有关架构的任何限制、请发送链接并告知我。

    谢谢、

    Shlomi

     

    e2e.ti.com/.../CC2642_2B00_CC3220.docx

     

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

    CC2642R2通过从站获取其映像是什么意思? 您是指使用 CC3220文件系统的 CC2642器件的片外 OAD 吗?

    通过 CC3220存储数据肯定会产生一些开销。 您将需要在两个器件之间的接口中包含一个 CC3220休眠或 LPDS 唤醒源引脚。 然后、我想您需要在协议中内置一种方法、为 CC3220指定某些操作仅需要打开器件才能访问文件系统(以确保在不需要 Wi-Fi 时、快速或自动连接策略不会浪费额外的功率)。 一般而言、我认为这实际上取决于用例。

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

    您好 Ben、

    我计划通过 UART 将 CC2642R 连接到 CC3220R。

    CC3220R 将具有外部串行闪存。

    CC2642R 的第二个 UART 将连接以用于外部主机开发和生产线:

     

    主机<-->[[UART_X] CC2642R [UART_Y]<-->[[UART_A] CC3220R [闪存]]

     

    CC2642R 是控制所有系统逻辑的"主器件"。  CC3220R 为"从器件"

    主要负责 Wi-Fi 通信的应用。

    此外、我还想将 CC3220R 的串行闪存用作通用存储器

     

    现在、我正在研究软件更新过程的系统设计、并有几个问题。

     

    用例 A:  从主机更新 CC2642R 和 CC3220R 的软件

    用例 B:   更新 CC2642R 和 CC3220R OTA BLE 的软件(图像为

    CC2642R 接收)

    用例 C:   更新 CC2642R 和 CC3220R OTA Wi-Fi 的软件(图像为

    CC3220R 接收)

     

    问题1. 请解释 CC2642R 和 CC3220R 的 ROM。

    问题1.1。 如何创建 ROM? 是 TI 提供的二进制映像还是在工程编译期间创建的映像?

    Q1.2 ROM 可以通过 OTA 或 UART 进行更新吗?

    Q1.3 CC3220R 的 ROM 大小是多少? 它是在规范中编写的、ROM 包含"外部串行闪存引导加载程序和外设驱动程序"。 Wi-Fi 堆栈是否也位于 ROM 中?

    Q1.4 除了 BLE 堆栈和引导加载程序之外、CC2642R 的 ROM 内容是什么?

    TI RTOS 是否位于 ROM 中?

     

    问题2. CC3220R 的软件更新

    问题2.1。 我知道 CC3220R 软件始终位于串行闪存中、并在复位后加载到 RAM 中。 新映像也会编程到闪存中。

              引导加载程序如何区分"旧"映像和"新"映像?

    Q2.2我计划通过 CC2642R (用例 A 和 B)或 CC3220R (用例 C)获取新映像、对闪存进行编程并激活软件更新。 它是否正确、启动更新应该是什么触发器?

    Q2.3软件更新操作(查找映像、加载、擦除等)的流程是什么?

     

    问题3. CC2642R 的软件更新

    Q3.1是否可以将 CC2642R 的新映像加载到 CC3220R 的串行闪存中并从 UART_Y 激活引导加载程序? (CC3220R 将从闪存读取映像并通过 UART_A 发送) Q3.1A 此类编程是否可由将由 CC3220R 控制的"后门"GPIO 触发?

     

    问题4. CC3220R 串行闪存

    Q4.1是 CC3220R 串行闪存的一部分、可用作通用存储器吗? CC3220R 是否具有用于此目的的文件系统和 API?

     

    谢谢、

    Shlomi

     

     

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

    您好、Shlomi、

    我可以回答 Wi-Fi (CC3220)方面的问题。 请参阅以下内嵌的我的回答:

    问题1. 请解释  CC2642R 和 CC3220R 的 ROM。

    问题1.1。 如何创建 ROM? 是 TI 提供的二进制映像还是在工程编译期间创建的映像?

    根据定义、ROM 在制造过程中创建。 CC3220的 ROM 对于引导加载程序以及网络处理器(NWP)库存固件的使用至关重要、该固件可处理从 TCP/IP 堆栈一直到 MAC+PHY 的所有 Wi-Fi 网络。 在 CC3220 NWP 端运行的固件可通过 SDK 中提供的服务包进行更新、其中包含 ROM 固件的补丁。  

    Q1.2 ROM 可以通过 OTA 或 UART 进行更新吗?

    不能、ROM 无法更新、但服务包允许对 NWP 固件进行选择性补丁。 这些服务接收器可通过 OTA 或 UART 进行更新。

    Q1.3 CC3220R 的 ROM 大小是多少? 它是在规范中编写的、ROM 包含"外部串行闪存引导加载程序和外设驱动程序"。 Wi-Fi 堆栈是否也位于 ROM 中?

    CC3220的 ROM 大小不是公开的。 Wi-Fi 堆栈是 ROM 的一部分、但它可以并且已经使用服务堆栈进行了修补和增强。 这意味着您无法直接在 NWP 上运行您自己的 Wi-Fi 堆栈、因为服务堆栈只能由 TI 创建。

     

    问题2. CC3220R 的软件更新

    问题2.1。 我知道 CC3220R 软件始终位于串行闪存中、并在复位后加载到 RAM 中。 新映像也会编程到闪存中。

              引导加载程序如何区分"旧"映像和"新"映像?

    作为 OTA 过程的一部分、应用程序会写入一组具有"待提交"标志设置的文件。 此捆绑包包含主 MCU 映像.bin、因此当您重置器件时、引导加载程序将立即看到新的 MCU 映像、尽管设置了"待提交"标志。 关键是、只要存在新的"待提交"映像、"旧"映像在文件系统中就不可见、但在新映像提交到文件系统之前、不会覆盖它。 如 需更多信息、请参阅 OTA SimpleLink Academy 模块。

    Q2.2我计划通过  CC2642R (用例 A 和 B)或 CC3220R (用例 C)获取新映像、对闪存进行编程并激活软件更新。 它是否正确、启动更新应该是什么触发器?

    触发因素将取决于您计划如何与产品互动。 如果用户将通过云与器件进行交互、则等待来自云的一些数据包或消息以触发 OTA 将是合理的。

    Q2.3软件更新操作(查找映像、加载、擦除等)的流程是什么?

    对于 CC3220、我们提供了 cloud_ota 示例、该示例与 OTA 库进行交互以执行 OTA 更新。 您应使用该示例作为 OTA 所需执行的正确步骤的参考。  

    问题4. CC3220R 串行闪存

    Q4.1是 CC3220R 串行闪存的一部分、可用作通用存储器吗? CC3220R 是否具有用于此目的的文件系统和 API?

    是的、CC3220R 外部闪存可用作通用存储。 有关 如何使用 CC3220外部闪存的信息、请参阅安全文件系统 SimpleLink Academy 模块。  

    此致、
    Michael