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.

[参考译文] CC1312R:从嵌入式处理器刷写空的 CC1312R1F3RGZT

Guru**** 2551110 points
Other Parts Discussed in Thread: AM6442, CC1312R, UNIFLASH

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1061426/cc1312r-flashing-an-empty-cc1312r1f3rgzt-from-an-embedded-processor

器件型号:CC1312R
主题中讨论的其他器件:AM6442UNIFLASH

您好!

我 的定制 PCB 包括 AM6442 SoC 和 CC1312R1F3RGZT (该设计已由 TI 团队进行审查)。

 AM6442上的操作系统 是 Linux。

我需要找到一种方法来从  AM6442 SoC 刷写空的 CC1312R (之前未刷写)。

SoC <-> CC1312R 通过4个信号进行连接。

SoC UART RX 连接到 DIO_2、应用于刷写 CC1312R。

SoC UART TX 连接到 DIO_3、应用于刷写 CC1312R。

SoC GPIO 连接到 DIO_1、应用作引导加载程序后门。

SoC GPIO 连接到 CC1312R 的 RESET_N

我的问题是:

1) 1) UART 连接是否正常?

swra466中的表2-9表示:UART_RX 焊盘为 DIO2、UART_TX 焊盘为 DIO3。

这到底意味着什么?

CC1312的 RX 是 DIO2? 还是 SoC 的 RX 应连接到 DIO2?

_________________________________________________________________________________________

2) 2)如何 首次刷写 CC1312R (之前未刷写)?

我无法使用 UNIFLASH、因为这是一个 GUI、x86 Linux 工具。

我无法使用 TI-15-4-stack-gateway-linux-SDK 中的 SBL 示例、因为此应用程序假定器件具有已刷写 的应用程序、该应用程序已启用引导加载程序和引导加载程序的后门。

e2e.ti.com/.../cc1312r-cc1312r1f3rgzt-uart-linux

那么、如何从 ARM64处理器刷写器件呢?

我看到有针对 CC13xx 的 openOCD 支持 (http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/simplelink-openocd/1_1_0/index_FDS.html)

openOCD 可以使用我的设置吗? (无 JTAG、仅默认连接 UART +上述2个 GPIO)。

_________________________________________________________________________________________

3) 3)为了刷写之前刷写的器件、 我只需 启用引导加载程序、并选择 DIO_1作为具有正确逻辑电平的后门(在之前刷写的 FW 中)?

谢谢。

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

    您好!

    关于您的问题:

    1. CC1312的 RX 为 DIO2,TX 为 DIO3。

    2.由于这是一个非常具体的情况,您可能需要做一些开发工作。

    我的建议是首先阅读介绍串行引导加载程序接口的应用报告。 我知道,本应用报告包含的示例文件不是很有用,因为它们演示了 Windows 上的实施,但这仍然是您实施的参考点。

    然后尝试重复使用 Linux 网关 SDK 示例中的一些现有代码。 尝试向器件发送基本命令并查看其响应方式。 看看这是否符合您的预期。 您还可以通过分析主机和器件之间通过 UART 发送的数据来尝试查看 Uniflash 如何与器件通信。 这还将为您提供一些有用的信息。

    现在、关于您在 OpenOCD 上的问题。 已知的限制并未提及在 CC13xx 器件上不支持串行闪存的任何内容。 因此、您也可以尝试使用 OpenOCD。

    BR、
    安德烈斯

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

    安德烈斯、您好!

    1)好的、谢谢。

    2) 2)好的、关于 openOCD、这可以通过 UART 信号而不是 JTAG 进行工作吗?

    3) 3)也许您知道这个问题的答案吗?

    谢谢

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

    您好!

    2.我不确定这是不是真的。 您提供的链接中提到了串行、但这可能只是指 SWD 支持。

    3.我的理解是,你需要考虑三个方面。

      a.启用引导加载程序。
      b.启用引导加载程序后门
      c.配置将用于触发引导加载程序的引脚(逻辑电平、引脚编号)。

    BR、
    安德烈斯