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.

[参考译文] MSPM0L1105:CAN##39;t 对 MCU 进行编程/调试

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1379168/mspm0l1105-can-t-program-debug-the-mcu

器件型号:MSPM0L1105
主题中讨论的其他器件: LP-MSPM0L1306UNIFLASH、MSPM0L1306

工具与软件:

您好!

我在使用评估板(LP-MSPM0L1306)时在定制电路板上遇到了 MSPM0L1105问题。 已受影响的2个定制板。

问题是、我在调试固件时根本没有任何问题、但在 停止调试并再次尝试对电路板进行编程后、它无法进行编程、尽管之前编程的固件仍然在工作。 J-Link 编程器返回错误"Error:Failed to initialized DAP"。

还尝试使用 UniFlash 将 MSPM0L1105连接到评估板上提供的 XDS110调试探针进行编程或恢复出厂设置、但显示错误"[错误] CS_DAP_0:连接到目标时出错:DAP 连接错误。 这可能是由器件进入低功耗模式引起的。 尝试强制执行外部复位。 如果错误仍然存在、请尝试强制执行 BSL、批量擦除或恢复出厂设置。 有关更多信息、请查看器件常见问题解答。"

我遵循了该指南: /cfs-file/__key/communityserver-discussions-components-files/908/1220.Unlock-MSPM0-instructions.pdf 、但我停留在方法1:步骤5。 此步骤让我采用方法2、该方法工作正常、因为我收到绿色消息"Send firmware successfully"和"Download complete"(如 PDF 中所示的图像)、但 MCU 与之前的状态相同、但未进行编程、并且在尝试解锁时停留在方法1:步骤5。

我不是尝试在 NVM 或 NONMAIN 上进行写入(我看到这可能是导致锁定的原因、但我不使用它)、它只是一个简单的固件、可以对 IO 和 SPI 引脚进行读取和写入、来测试 定制板上的组件是否正常工作。

注意:我将 vscode 与 cmake 一起使用来构建固件 和 J-Link (通过 SWD 进行编程/调试)。

提前感谢。

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

    您好!

    1.确保您的.cmd 文件和启动文件已从 L1306迁移到 L1105。

    2.恢复出厂设置时、似乎使用 BSL 重新下载代码、但该代码适用于 L1306、不适用于 L1105。 如果您有 SWD 和 RESET 引脚、请尝试通过 CCS.e2e.ti.com/.../Factory-reset_5F00_Auto.pdf 遵循本指南

    此致、

    Zoey

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

    您好、感谢您的 快速回复

    1.我没有迁移、因为我在"TI 系统配置工具"中创建了一个新项目。 我使用 GCC 构建、没有.cmd 文件。 我正在使用该工具生成的链接器文件(.lds)、其中在"Select Device"中选择了 MSPM0L1105。

    (已尝试一切措施来解决警告、但在选择器件后、它仍然会显示)

    我的启动文件是"startup_mspm0l110x_gcc.c"、包含在 MSPM0 SDK v2.00.00.03中(source/ti/devices/msp/m0p/startup_system_files/gcc)

    如果是这样、会生成链接器文件:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    /* Generate a link error if heap and stack don't fit into RAM */
    _Min_Heap_Size = 0; /* required amount of heap */
    _Min_Stack_Size = 0x80; /* required amount of stack */
    /* Specify the memory areas */
    MEMORY
    {
    FLASH (RX) : ORIGIN = 0x00000000, LENGTH = 0x00007FF8
    SRAM (RWX) : ORIGIN = 0x20000000, LENGTH = 0x00001000
    BCR_CONFIG (R) : ORIGIN = 0x41C00000, LENGTH = 0x00000080
    BSL_CONFIG (R) : ORIGIN = 0x41C00100, LENGTH = 0x00000080
    }
    /* Note: SRAM length must match MPPC/MEMSS config! Please edit it manually. */
    REGION_ALIAS("REGION_TEXT", FLASH);
    REGION_ALIAS("REGION_PREINIT_ARRAY", FLASH);
    REGION_ALIAS("REGION_INIT_ARRAY", FLASH);
    REGION_ALIAS("REGION_FINI_ARRAY", FLASH);
    REGION_ALIAS("REGION_BSS", SRAM);
    REGION_ALIAS("REGION_NOINIT", SRAM);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    2.我曾尝试按照指南操作、但在本例中无法正常工作、使用的是 J-Link、评估板上的 XDS110调试探针(LP-MSPM0L1306)连接到定制板上的 MSPM0L1105。

    使用 J-Link 时、就会出现错误:

    使用 XDS110调试探针:

    单击"Force Reset"时:

    当我单击"确定"时:

    此致。

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

    您好!

    SWD 似乎可以访问您的内核、但无法访问 DAP。

    您可以检查自己的电路板上的 VCORE 电压吗?

    这似乎是由硬件造成的。

    此致、

    Zoey

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

    您好!

    VCORE 的电压为1.347V。 硬件开发指南指出典型电压为1.35V、情况应该不错。

    我可以在首次将板连接到 PC 时加载固件、第一次连接后固件会停止连接。

    此致。

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

    您好!

    很抱歉这么晚才回复。  

    您的软件对于 MSPM0L1306 LaunchPad 来说是可以的、但如果迁移到自己的工程、它无法正常工作?

    看门狗? 有一种可能的条件是、在发送 DSSM 消息时您的 MCU 始终处于复位状态。

    请尝试执行以下步骤进行确认:

    1.将 PA18上电并使 MCU 进入 BSL 模式。

    2.尝试在10秒内下载或恢复出厂设置。

    此致、

    Zoey

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

    您好!

    我的意思是、该软件适用于 MSPM0L1306 LaunchPad、因为我每次都可以对其进行刷写/调试。

    但对于定制电路板上的 MSPM0L1105、当我首次刷写/调试时、一切都在运行。 这是我第二次尝试闪存/调试时、MCU 没有响应。

    禁用看门狗。   我在"TI 系统配置工具"上启用的唯一模块是 GPIO、SPI、TIMER 和 SYSCTL (SYSCTL 具有所有默认值)。

    我尝试了 这些步骤 ,但我得到相同的错误,我显示在上一个答复.

    此致

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

    你(们)好

    奇怪的是、一旦你下载了项目、那么 MCU 将被锁定。

    您是否首次尝试过恢复出厂设置? 然后在第二次尝试连接 MCU。

    您能否将电路板的 MCU 器件原理图发送给我们? 让我们首先排除它是否与硬件有关

    此致、

    Zoey

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

    您好!

    这是原理图

    此致

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

    您好!

    硬件没有问题。 您是否可以尝试按照以下步骤读取 MCU 的状态?

    e2e.ti.com/.../Read-CFGAP_5F00_BOOTDIAG.pdf

    此致、

    Zoey

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

    您好!

    我无法读取砖型 MCU 上的这些寄存器、因为我无法连接到 CS_DAP_0 (DAP 连接错误)。

    不确定这是否是您需要的结果、但我购买了新出厂的定制电路板并读取该 MCU 上的寄存器。

    此致。

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

    您好!

    您的 MCU SWD 功能似乎已被禁用。 您是否更改了 NONMAIN?

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

    您好!

    否、我未更改 NONMAIN。 如果 NONMAIN 已更改、那不是因为我想更改。

    此致。

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

    你(们)好

    尝试在 SWDCLK、SWDIO 线路上添加拉电阻、使用2.2K 或4.7K 电阻器上拉至3V。

    应使 SWD 线路稳定。

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

    您好!

    我尝试了两个电阻、先4.7K、然后是2.2k、但都没有使 SWD 工作。

    此致

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

    经过软件和硬件测试后、我们注意到当 IC 处于启用状态时、IC 从机的其中一条 I/O 线路干扰了 SWDIO 引脚、因此我们将更改用于该 I/O 的引脚 感谢您的时间和耐心!