主题中讨论的其他器件:MSP-EXP430FR2355、 MSP430G2553、 MSP-EXP430G2、 MSP430FR4133、 MSP430FR2311
我在 Linux 中使用 MSPdebug 和 BSL 通过 UART 刷写器件时遇到问题。 我使用的是 SparkFun 的串行分线板、它使用 CH340G USB 转串行转换器。 /DTR 连接到/RST、/CTS 连接到 TEST。 如图1所示。 使用 ROM-BSL 驱动程序的默认进入序列、即`DR、r、R、r、d、R:DR、r、`(R:RTS 打开、r:RTS 关闭、D:DTR 打开、d:DTR 关闭。 逗号表示延迟。 进入和退出序列用冒号分隔。) 也许这应该更改为`dr、R、r、R、D、r`?
我在示波器上看到的 BSL 进入序列不是我所期望的;它首先使/RST 在释放之前低电平大约200ms、然后不执行任何操作。 图2显示了示波器捕获。 /RST 在我运行以下命令后变为低电平。 MSPdebug 超时并尝试执行批量擦除、但也失败了。
为了实现这一目的、我使用 launchpad (MSP-EXP430FR2355)、并且我通常可以使用 mspdebug 和使用 MSP430.DLL 的 utilb 驱动程序来刷写器件。 在目标器件上刷写的当前程序具有 LPM4.5中的器件。 我已移除跳线隔离块中的跳线、尝试通过 BSL UART 进行闪存。
$ mspdebug -d /dev/ttyUSB0 ROM-BSL MSPDebug 0.25版-用于 MSP430 MCU 的调试工具 版权所有(C) 2009-2017 Daniel Beer 这是免费软件;请参阅复印条件的来源。 没有 保修;甚至不适用于适销性或特定用途的适用性。 来自 MSP430.dll v3.3.1.4的芯片信息数据库版权所有(C) 2013 TI、Inc. ROM_BSL:无法接收答复:连接超时 ROM_BSL:无法接收答复:连接超时 ROM_BSL:同步失败 ROM_BSL:命令0x1E 失败(addr = 0x0000、len = 0x0000) 警告:ROM_BSL:无法读取版本 正在执行批量擦除... ROM_BSL:无法接收答复:连接超时 ROM_BSL:无法接收答复:连接超时 ROM_BSL:同步失败 ROM_BSL:命令0x18失败(addr = 0xfffe、len = 0xa506) ROM_BSL:初始批量擦除失败 ROM_BSL:解锁失败